home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Fred Fish Collection 1.5
/
ffcollection-1-5-1992-11.iso
/
ff_disks
/
300-399
/
ff349.lzh
/
MED
/
MEDPatch
/
MEDPatch.doc
< prev
Wrap
Text File
|
1990-04-16
|
2KB
|
49 lines
MEDPatch.doc
============
The problem:
------------
The audio hardware of Amiga needs a small pause after DMA is turned on/off
and the new values can be pushed to hardware registers. This could be
done with audio interrupts, but I couldn't get it work, so the pause
is done in the following way:
move.l waithwnum,d1
waithw0: dbf d1,waithw0
----- DMA on -----
move.l waithwnum,d1
waithw1: dbf d1,waithw1
----- new values to registers ---
It means that the player must busy wait in the interrupt code. The pause
is very short, so it will not slow down your computer. The only problem
is that when you in year 2000 buy an Amiga 5000 with 500 MHz M68050,
1 Gigabytes of 128-bit ram and 4096×4096 screen resolution with
1 073 741 824 colors (I hope this would be true), the pause will be too
short because of the fast processor. It is not dangerous, your Amiga won't
crash, but the sound won't be very enjoyable then.
The solution:
-------------
The solution is MEDPatch. It can modify the length of the pause.
The player routine of MED contains an identification string ("MEDPlayer
is here!!!:"). This string is followed by a long word, which contains
the pause length. The default length is 500, and it should work well
with all current Amigas.
MEDPatch usage is:
medpatch <file> <value>
<file> is the name of the executable file you want to change.
<value> is the new pause length. If not specified, MEDPatch will
just tell you the current pause length of the file.
You can use MEDPatch to MED, MEDPlayer and you should also be able to
use it to all programs containing MEDPlayer (programmers please, don't
remove the identification string!!).
--------------
Please also note that this pause-problem is not just a problem of MED.
SoundTracker also uses the dbf-instruction for the pause, but there's
no way to increase the pause length -number for super-fast processors.