Date: Tue, 15 Apr 1997 01:58:49 -0400 (EDT) To: tghack-list@joyce.eng.yale.edu From: David Woodford X-Software: MLF v2.3, Copyright 1995, 1996 by Bt X-Original-Id: Subject: Some updates and Develo stuff X-UIDL: 6cd87fef92bd2ee910186a0b5fa1c60e Hi all, I've finally had some free time to type up a little of the Develo translations that I have. Right now, I have 8 CD-ROM BIOS functions for everybody to see. I'll post it here and it can also be found at my nonexistant web site: http://www-personal.umich.edu/~dfw/bios.txt Also, I've done some minor updates to the PCE Resources MiniFAQ (I changed the name from Hack MiniFAQ to avoid potential confusion between the actual Hack FAQ). The address is still the same though. http://www-personal.umich.edu/~dfw/hackfaq Here are the BIOS functions: Note: I haven't found out what the "$2272 (VDTIN_FLG)" is. CD-ROM BIOS Functions (8) Last Update: 14 April 1997 Label: CD_BOOT Addr: $E000 function: Boot the CD-ROM BIOS IN: N/A OUT: N/A Brings you to the familiar CD-ROM startup screen. Label: CD_FADE Addr: $E02D function: Begin or cancel linear PCM or ADPCM fade out IN: reg A = mode $00: Cancel fade out $08: PCM fade out (6.0 secs) $0A: ADPCM fade out (6.0 secs) $0C: PCM fade out (2.5 secs) $0E: ADPCM fade out (2.5 secs) OUT: N/A Label: AD_RESET Addr: $E030 function: Reset the ADPCM controller IN: N/A OUT: N/A Label: AD_READ Addr: $E036 function: Read data from ADPCM to memory IN: _CX: ADPCM buffer address _DH: Destination data address type $00: Local $FF: VRAM $02-$06: MPR # _BL: addr low bits low bits Bank # ($80-$87) _BH: addr high bits high bits Not Used _AX: data size to be read (in bytes) OUT: reg A = error status $00: operation success other: error Notes: When reading into VRAM, $2272 (VDTIN_FLG) becomes 1. Label: AD_WRITE Addr: $E039 function: Write to ADPCM buffer from memory IN: _CX: ADPCM buffer address _DH: Source data address type $00: Local $FF: VRAM $02-$06: MPR # _BL: addr low bits low bits Bank # ($80-$87) _BH: addr high bits high bits Not Used _AX: data size in bytes OUT: reg A = error status $00: no error other: error Notes: When reading from VRAM, $2272 (VDTIN_FLG) becomes 1. Label: AD_PLAY Addr: $E03C function: Playback a section of data from ADPCM buffer IN: _BX: ADPCM buffer playback start address (START) _AX: Size of data to playback in bytes (LENGTH) _DH: Sampling rate (range: $00-$0E) (RATE) Khz = 32 / (16 - _DH) _DL: Mode bit 0: Counter Mode 0: Set START, LENGTH, and RATE 1: Playback using previous START, LENGTH, and RATE bit 7: Play Mode 0: Auto Stop 1: Repeat OUT: reg A = error status $00: no error other: error Notes: An error will occur if AD_PLAY is called during playback of ADPCM. Before executing, call AD_STOP to halt the current playback followed by AD_STAT to confirm that playback has stopped. Label: AD_STOP Addr: $E042 function: Stop playback of ADPCM buffer data IN: N/A OUT: N/A Label: AD_STAT Addr: $E045 function: Read the state of the ADPCM controller IN: N/A OUT: reg A: State of ADPCM controller $00: ADPCM not busy (end or not playing) other: ADPCM busy reg X: ADPCM buffer and playback state $00: Playback in progress and more than half of the buffer data is remaining. $01: Playback halted $04: Playback in progrss and less than half of the buffer data is remaining. ------ David Woodford dfw@umich.edu