Sidsound Designer replay sought
Moderators: simonsunnyboy, Mug UK, Zorro 2, Moderator Team
- unseenmenace
- Atari God
- Posts: 1966
- Joined: Tue Sep 21, 2004 9:33 pm
- Location: Margate, Kent, UK
- Contact:
Sidsound Designer replay sought
I have a working SSD replay binary that uses Timers A, C an D, which is what I need however it uses an area of low memory for storing a load of stuff during playback resulting in an inability to use GEMDOS disk access routines while playing music. Does anyone have or know of an SSD replay (source or binary) that is more system friendly?.
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
Hmm, what Timer C has to do with disk access? There is no disk code in the 200Hz system timer. And of course that the critical error handler is not called there (it wouldn't make any sense).
There is floppy code at the VBL though. If the floppy VBL is not called, media change detection might fail and the drive will never be deselected.
It might be some third party disk code at the 200Hz. A write back cache program (or hard disk driver) might very well use the system timer. But not TOS itself, at least not the older versions (I'm not so familiar with later TOSes).
There is floppy code at the VBL though. If the floppy VBL is not called, media change detection might fail and the drive will never be deselected.
It might be some third party disk code at the 200Hz. A write back cache program (or hard disk driver) might very well use the system timer. But not TOS itself, at least not the older versions (I'm not so familiar with later TOSes).
- unseenmenace
- Atari God
- Posts: 1966
- Joined: Tue Sep 21, 2004 9:33 pm
- Location: Margate, Kent, UK
- Contact:
I was gonna say I don't think Timer C is an issue coz I can still load files whilst playing other music formats without having restored the OS Timer C routine. I believe the low memory that is being used contains various system variables and data buffers used by the GEMDOS disk routines. This is also the case with Mad Max's Ghost Battle Driver (ripped and relocated to $4140 by Grazey) where I have to back up an area of low memory to copy the music driver and song data to for it to work. This again stops disk routines from working but they are fine if I stop the music and restore the backed up memory.
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
- Grazey / PHF
- Atari Super Hero
- Posts: 519
- Joined: Fri Jun 21, 2002 12:50 pm
- Location: Montreal, Quebec
- Contact:
Quite a few music routines use memory around $200 (SSD , Lotus etc) as far as I was aware these don't interfere with GEM DOS file routines. In UMD8730 I used all music whilst loading using FREAD without any problems.
Regarding Ghostbattle, my latest SNDH og GB removes all Word addressing so the tune can be played from any address. OCWAS ULM, OCWAS Mainmenu, also use this driver.
Grazey
Regarding Ghostbattle, my latest SNDH og GB removes all Word addressing so the tune can be played from any address. OCWAS ULM, OCWAS Mainmenu, also use this driver.
Grazey
http://phf.atari.org - demo coders since 1983
http://sndh.atari.org - Maintainer of the Atari ST chip music archive
http://www.scenestream.net - Nectarine Administrator
http://sndh.atari.org - Maintainer of the Atari ST chip music archive
http://www.scenestream.net - Nectarine Administrator
- unseenmenace
- Atari God
- Posts: 1966
- Joined: Tue Sep 21, 2004 9:33 pm
- Location: Margate, Kent, UK
- Contact:
Cheers Grazey
and a few mentions of other people that have kindly shared their wisdom.
The SSD driver I'm using uses memory at $200 ish for its timer routines but it also uses some memory around $1500 - $2200 ish for something which I presume is the bit causing the problem. In case its of any help I'm using several GEMDOS routines for reading directories (setdrv, chdir, sfirst & snext) and loading files (set DTA, sfirst, open, read and close).Grazey wrote:Quite a few music routines use memory around $200 (SSD , Lotus etc)
Nice one, I'll be sure to rip out that replay routine for my player. At this rate my credits screen will say Grazey about 10 timesGrazey wrote:Regarding Ghostbattle, my latest SNDH of GB removes all Word addressing so the tune can be played from any address

UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
I believe some hard disk drivers use the 200hz system counter ($4ba) that timer c drives. Certainly after i let SSD take over timer c I had some intermittent loading problems. Adding this routine onto my VBL fixed everything:
Code: Select all
AudioMusic_Fake4BA:
move.l a0,-(a7)
move.l a1,-(a7)
tst.w gAudioMusicFake4BAFlag
beq.s .noFake
lea gAudioMusic4BA_Add+8,a0
lea gAudioMusic4BA+8,a1
andi.b #0,CCR
addx.l -(a0),-(a1)
addx.l -(a0),-(a1)
move.l gAudioMusic4BA,$4BA.l
move.w $442.w,-(a7)
move.l $400.w,a0
jsr (a0)
addq.w #2,a7
.noFake:
move.l (a7)+,a1
move.l (a7)+,a0
rts
i guess you looked at the SSD replay rout sources available on dhs.nu? the low memory area accesses are dead easy to remove if they bother you.. or substitute with SMC routines.
i'm using this routine in my SNDH converter, and disk accesses are fine when playing them. as others have already said, just steal the VBL or Timer-C vector in a more system friendly way.
G
i'm using this routine in my SNDH converter, and disk accesses are fine when playing them. as others have already said, just steal the VBL or Timer-C vector in a more system friendly way.
G
- unseenmenace
- Atari God
- Posts: 1966
- Joined: Tue Sep 21, 2004 9:33 pm
- Location: Margate, Kent, UK
- Contact:
Cheers I'll try thatPink/RG wrote:Adding this routine onto my VBL fixed everything:
Actually I disassembled a binary that I had. I didn't realise there were any decent sources available. I shall certainly have a look at them, cheers.gwEm wrote:i guess you looked at the SSD replay rout sources available on dhs.nu?
UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
So what you mean is that the timer C handler calls the event timer vector, not the critical error handler. Yes, of course it does.Pink/RG wrote:I believe some hard disk drivers use the 200hz system counter ($4ba) that timer c drives.
TOS doesn't use the 200hz timer for any disk code anyway. Yes, as said, a third party hard disk driver might. It might use it for timeouts and for write back cache flushing.
- unseenmenace
- Atari God
- Posts: 1966
- Joined: Tue Sep 21, 2004 9:33 pm
- Location: Margate, Kent, UK
- Contact:
Anyone know if that would include STeem's virtual hard drives?ijor wrote:TOS doesn't use the 200hz timer for any disk code anyway. Yes, as said, a third party hard disk driver might. It might use it for timeouts and for write back cache flushing.
It took me a while to figure out that OCWAS was "Oh Crikey What A Scorcher" lol. Incidentally is it OK to "borrow" your modified Ghost Battle routine? It'd save me some griefGrazey wrote:Regarding Ghostbattle, my latest SNDH og GB removes all Word addressing so the tune can be played from any address. OCWAS ULM, OCWAS Mainmenu, also use this driver.

UNSEEN MENACE
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
Several STFM's, 4MB STE, 2MB TT with 1.2GB Hard Drive and 14MB Falcon with 540MB Hard Drive,
Lynx 2 and Jaguar with JagCD
Member of GamebaseST and AtariLegend team
Check out my website at http://unseenmenace.110mb.com
More than likely it doesn't. Steem doesn't need to care about hard disk controller timeouts or caching. Hard disk is emulated at the Gemdos level, not at the hardware level.unseenmenace wrote:Anyone know if that would include STeem's virtual hard drives?ijor wrote:TOS doesn't use the 200hz timer for any disk code anyway. Yes, as said, a third party hard disk driver might. It might use it for timeouts and for write back cache flushing.
- Grazey / PHF
- Atari Super Hero
- Posts: 519
- Joined: Fri Jun 21, 2002 12:50 pm
- Location: Montreal, Quebec
- Contact:
yeah, no problemunseenmenace wrote:It took me a while to figure out that OCWAS was "Oh Crikey What A Scorcher" lol. Incidentally is it OK to "borrow" your modified Ghost Battle routine? It'd save me some grief

Grz
http://phf.atari.org - demo coders since 1983
http://sndh.atari.org - Maintainer of the Atari ST chip music archive
http://www.scenestream.net - Nectarine Administrator
http://sndh.atari.org - Maintainer of the Atari ST chip music archive
http://www.scenestream.net - Nectarine Administrator