This is the last and final release of AMCAF. Development has ceased. AMCAF
is now freely distributable. Don't be irritated by the Installer claiming
to install a Demo-Version, this is the COMPLETE and UNCRIPPLED version of
AMCAF, which compiles just fine.
NOTE: New users need the AMCAFExt140Exa.lha archive aswell! I didn't have
the time to code any new example programs or update the docs. Sorry dudes.
Thanks to all those users who have supported me during the 5 years of AMCAF
development morally and with their registration fee.
Thanks must also go to that bastard that cracked the AMCAF demo version.
How low has someone to go to crack SHAREWARE?
New in this version:
- Found some wrongly assembled lines in the protracker vibrato table.
If someone encountered some scarce problems the modules using
fine-vibrato, these should be gone now.
- New c2p routine by Mikael Kalms. Up to 20%-80% faster and now also
supports plane depth from 4 to 6!
- Fixed a little bug that wouldn't play samples longer than 64KB
correctly (just a lsr.w instead of a lsr.l).
- Probably fixed a lot of bugs and spurious crashes introduced with the
- Fixed a newly introduced bug in Lzstr$ and Lsstr$.
- Found something new out about AMOS and fixed some bugs with editor-
- Added new transition commands:
- Alloc Trans Source bank
- Set Trans Source bank/address
- Alloc Trans Map bank,width,height
- Set Trans Map bank/address,width,height
- Alloc Code Bank bank,size
- Trans Screen Runtime scr,bitplane,ox,oy
- Trans Screen Dynamic scr,bitplane,ox,oy
- Trans Screen Static NOT YET IMPLEMENTED
- Trans C2p chkbuf NOT YET IMPLEMENTED
Some last words: Allocating the Code bank to small will cause memory
overwrites. Wrong or stupid parameter values are not checked for
validity. The Trans commands are still a bit slow (3 VBLs for a 256x256
pixel transition with MC68060 and all caches disabled, 0.8 VBLs for the
same transition with all caches turned on).
Maybe the C2P Transition will be a bit better. Still need to update the
c2p to a state-of-the-art routine (by Kalms).
- New for ALL PT sample commands: Entering a negative value as channel
bitmask will trigger the Pt Free Voice function which will search for
the best channel number to use for sample replaying. Really handy
indeed! Pt Free Voice is rather complex:
- it first checks if the bitmask is zero and if so, it returns 0.
- then it checks, if only one bit was set in the mask and returns
- after that, it finds out if all four channels (or the ones given in
the bitmask) are currently playing a sound. If so, it returns the
channel bit of the sound which will cut off least.
- if there are free channels, it verifies, if music is playing at all.
If not, it returns the first free channel.
- so for music is playing, it looks if the user has masked out a
channel from the music (and which is currently free).
- then it checks for the remaining channels are playing looping sounds
for those will be not taken if necessary.
- the last step finds out the shortest sound currently played on the
channels, and then returns its channel bit.
So you'll get the most of your game sfx and music if you're using the
free voice function!
- New functions:
- =Pt Free Voice[(bitmask)]
- Lzstr and Lsstr now return '9999...' if number is too large to fit into
the given amount of digits.
- Sample&music-mixer changed to be more accurate (samples could have been
cut off some VBLs too early if the music was playing at higher cia
speeds than 125bmp) with cia-timed mods (at least this should have been
the case in theory).
- The sample replayer now uses a 2 byte chip mem buffer to kill the
high pitched beep sound sometimes appeared on samples which started
with 2 non-zero bytes. FixSamBank should now no longer be required.
- Pt Raw Play can now play looping samples by giving a negative length.
- Implemented Vu Meters to AMAL. BUT it will ONLY work, if you REMOVE
the original AMOS Music Extension. No other way to get it work!
- Added support for negative numbers in Lzstr$ and Lsstr$.
- Fixed a bug in Ssave.
- Fixed a minor bug in Pt Play (cia speed is now reset to 125).
- Fixed a bug in Qsqr. Now bigger numbers than 0-65535 can be used.
(Warning: starting with numbers >65535 it gets a bit inaccurate!
Remember that the resolution of the result remains 8 bit!)
- Added Sload/Ssave. Just the same commands like in the music
extension. Now you can really remove it!
- Misc bugfixes.
- Added support for Set Tmpras for Fellipse&Fcircle commands.
These commands can now be much faster!
- Added type check for Protracker modules.
- Fixed bug in Xfire.
- Misc changes.
Any mail, comments or donations welcome:
Chris Hodges Account: 359 68 63
Kennedystr. 8 BLZ : 700 530 70
D-82178 Puchheim Bank : Sparkasse Fürstenfeldbruck
Tel.: +49-89/8005856 WWW: http://platon.home.pages.de/
Email: platoncu-muc.de IRC: platon42 on Efnet