This application is shareware. If you find it useful you are required to register. (Within 30 days of first using it)
*** REGISTRATION IS FREE (for this version of AmpCalc) ***
Registration is merely so that I know who's using AmpCalc, I'm not expecting vast amounts of dosh for it.
To register send a stamped addressed envelope to me (or send a disc to cover postage if you're not in the UK).
Advantages of registration:
• You'll make me happy!
• You will be entitled to discounts off later versions which may not be free.
• You won't be breaking the law.
If you think that this program is really useful, and that you would really feel guilty about not paying anything for it then give some money to Comic Relief.
To do this, I'm sure Tim Browse won't mind passing on any cheques made payable to Comic Relief (sorry, but I don't know the address myself, and anyway I'm far too forgetful).
Tim Browse (author of the excellent Glazier template editor (also careware)) is at:
1, Arkle House
6, Chiltern View Road
Uxbridge
Middlesex
UB8 2PA
Copying
-------
Feel free to distribute as much as you like.
Exceptions:
• PD Libraries: Before including this in your catalogue, you must send me
your latest catalogue disc.
• Bulletin Boards: I will upload this to Arcade and Digital Databank, so that
I get the download credits. No one else is allowed to U/L to these two BBs.
Other BBs please eMail me at my fido point to ask if you can distribute it. My fido point 2:251/16.50
Wonderful features summary
--------------------------
+ Calculations with decimal places (rounded if not in decimal mode)
+ Follows Style Guide
+ SWI number<>name conversion.
+ Correctly copes with OS_WriteI+num and OS_WriteI+"A" (OS_SWINumberFromString
doesn't...)
+ ASCII code<>character conversion.
+ Bytes<>Kbytes quick conversion.
+ Sprite multipliers for raw sprite data.
+ Plenty of key short cuts.
+ Totals up file sizes from BBS filelists.
+ Rounds to nearest when converting from decimal.
+ As it's got one of those windows that usually gets lost underneath all the
others, clicking on the iconbar icon or in the calculator window workarea
will bring it to the front.
+ Itsy-bitsy WimpSlot.
+ You can have hours of fun dragging the windows around without using the
title bars :-)
+ Has !ampcalc² sprite to support Ting Kuei's DeskPatch.
+ Can convert all SYS/SWI calls in a Basic program from names to numbers
+ Can convert all SYS/SWI calls in a Basic program from numbers to names (but
see below)
+ Now has Config file in case you don't like some of the wonderful bits :-)
+ Can total filelists created by Febbs (used by some PC boards), to do this
simply put the first line of the file as FEBBS, see section on using Febbs
below.
+ Has no less than nine general purpose memories, which can store numbers or
strings.
+ You can close the window with Ctrl-Q
+ Undo facility
Using
-----
Just type into the icon.
The icons should all be self explanatory.
NOTE: The base only affects the output - this is to allow quick conversions.
(eg. If you are in binary mode then typing 7 [Return] will give %111) This
means that you *must* put the relevant base thingy before numbers, i.e. & for
hex, % for binary, (nothing) for decimal when typing calculations. (eg. In
binary mode just typing 11010101010 [Dec] won't work!)
Buttons:
To ASCII code - gives ASCII code of character in display (eg A -> 65)
From ASCII code - shows ASCII character (eg. &41 -> A)
To SWI Number - Changes SWI string to number (eg. DragASprite_Stop-> &42401)
From SWI Number - Changes SWI number to string (eg. 262343 -> Wimp_Poll)
To Kilobytes - Changes amount shown to Kb (eg. 40960 (bytes) -> 40 (k))
From Kilobytes - Changes amount shown to bytes (eg. 1 (k) -> 1024 (bytes))
Sprite Multipliers - Works out memory required for a sprite of size shown
in display (eg. 16*16 [Sprite 16] = 128). Does not allow
for Acorn sprite format heading as this is for people who
write demos, games & stuff.
Evaluate - Same as pressing Return (or = on a calculator)
= - If an expression is in the display, then this is the same as pressing
Return, otherwise it enters '=' so that you can use the ASCII
conversions on it.
Keys:
Return - Evaluate/Swi name -> number (depends what's in the icon)
Ctrl-S - Swi change
Ctrl-B - Binary
Ctrl-D - Decimal
Ctrl-X - heX (Wimp treats Ctrl-H as delete...)
Ctrl-Y - Converts from K to bytes eg. 2 ^Y = 2048
Ctrl-K - Converts from bytes to K eg. 4096 ^K = 4
Ctrl-Q - Closes the window
f1 - f9 - Recall memory (f1 recalls bank 1, f2 recalls bank 2, you can work
out the rest...)
Shift with f1 - f9 - Set memory to whatever is currently being displayed
(Shift-f1 sets bank 1, Shift-f2 sets bank 2, etc...)
f10 - Undo last operation
If you are a comms freak then this feature will be useful for you:
1) Get a file list from your favourite BBS.
2) Load it up into StrongEd or whatever you use.
3) Copy the lines with the files you want to download.
4) Save the text file and then drag it onto the AmpCalc window.
5) Say "wow!" as the display is set to the total of all the filesizes.
6) Click on the To KBytes icon to get an approximation of the number of
seconds it will take to download the lot (if you've got a 9600bps modem
using Y or Z modem that is.)
AmpCalc only takes notice of lines starting with # or 0, so you can copy the file area lines aswell if you want, and add comment lines.
Then you can keep this file in a window beside your comms package, to remind you what you wanted to d/l (or print it if you can't cope with large hi-res modes ;-). Amazing or what?!
Using Febbs
-----------
Some PC boards (eg. GABBS, my bossnode) use a program called FEBBS to compile their filelists, these lists are in a different format, so to total a Febbs list (or section thereof), put FEBBS (case sensitive) as the first line, eg:
FEBBS
INTHEAIR.ZIP 28629 21/05/93 [0001] "In The Air Tonight" in MOD format
JUSTALL.ZIP 110028 13/08/93 [0001] Metallica's "And Justice For All" - in
Lines starting with a space are ignored, so if the description splits over more than one line, it's OK, but you should be careful not to copy the title of the file area if it starts at the left. (This should be OK too, so long as it doesn't have a number in it)
SYS Conversion
--------------
To change the SYS calls in a Basic program, drag the Basic file onto the AmpCalc icon, set your options and click on OK.
WARNING! If I were you I'd keep a backup of the original Basic file before changing. I cannot be held responsible if it messes up the file.
When changing from numbers to names, it is very possible that the new linelength will be greater than that allowed by Basic (since the names are usually longer than the numbers). If this happens, you will get an "Expanded line too long" error, and the operation will be aborted (leaving the original file intact).
The options you have available are:
To numbers/To names - What you want it changed to.
Hexadecimal - If you're changing to numbers, then this selects
whether they should be in hex or not (the alternative
is decimal, and no, I'm not putting binary in, OK?)
Space - This determines whether a space should be put between
the SYS and the parameter. It works with either To
numbers or To names.
Note that the SYS will only be altered if it's not in the form you want it, as far as numerical/string goes. ie. If you're changing from names to decimal numbers, and a SYS &400C7 is encountered, it will remain SYS &400C7 and not get changed to decimal. (If you're really that fussy, then change everything to names first, then to decimal).
Only SYS calls that are currently known about can be converted. ie. If the program uses a nonstandard SYS call, then make sure the module that provides it is loaded.
Conversion of SWIs (ie SYSs called from bits inside [], by assembler routines) is also supported now, but there's a drawback. SYS is tokenised by BASIC, so is easy to pick out from the rest of the mess, SWI however is not tokenised, and can be upper or lower case. Consequently, if you're converting a program that has a variable with swi in it, (basswi% for example), then you'll get some strange errors, such as Unknown or missing variable. To prevent this from happening, you can turn SWI conversion off altogether, by altering a line in the Config file. This means that SYS calls only get converted.
I hope that only a few programs will be awkward in this way.
The Config file
---------------
Within the !AmpCalc directory there is a config file. This was put in so because a user didn't like the way you can drag windows around, and found the arrows to convert to and from ASCII/SWI/Kilobytes confusing. (The arrows point toward what your changing to, btw)
Anyway, now you can decide how AmpCalc is, and here's how:
Any line starting with a | is a comment.
The whole thing is case insensitive.
The other lines in the config file are options, in the following format:
Option :Parameter
There must be a colon immediately before the parameter, but the number of spaces *before* the colon doesn't matter.
The options supported are:
Conversions - can either be Text or Arrows
DragWindows - can either be Yes or No
SwiConversions - can either be Yes or No (see "SYS Conversion" above)
These should be fairly self explanatory, but if not, experiment!
Coming soon (maybe)
-------------------
Bugfix for: Sometimes the Expanded line too long error is reported as unknown or missing variable (mumble mumble, mutter mutter)
Merry calculations!
/\ _
(--)/\/\|_)
/ |
Contacts:
Amp Internet: insley@nowster.demon.co.uk
Al Sirat Netmail: 2:251/16.50 @ fidonet.org
Chapel Road Or private mail on Digital Databank, or Arcade,
Swanmore (though don't expect a fast response on these