
|
BIOS Entry list Onbekend, 00-00-00
BIOS Entry list
Comments:
Following restarts (from RST 0 - RST 28) are reserved for
BASIC-interpreter. RST 30 is reserved for interslot calls.
RST 38 handles hardware interrupts.
Name Function Name
Function Function Description
Entry Arguments
Return Result
Modifies Modified Registers
Notes Comments (optional)
------------------------------------------------------------
0000
Name CHKRAM
F Check RAM and sets slot for command area.
E -ß
R -ß
M ÜÛ-
N When done,a jump to INIT must be made for
further initializator.
0008
Name SYNCHR
F Checks if then current character pointed by
HL is one desired.If not,generates
'Syntax error',otherwise falls into CHRGTB.
E HL,character to be checked be placed at the
next location to this RST.
R HL points to next character,a has the
character.
Carry flag set if number, Z flag set if end
of statesment.
M AF,HL.
000C
Name RDSLT
F Select the appropriate slot according to the
value given through registers, and reads the
contents of memory from the slots.
E A: FxxxSSPP
| ||||
| ||++--Primary slot #(0-3)
| ++----Secondary slots #(0-3)
+---------If secondary slot # specified.
R A: Contents of memory.
M AF,BC,DE
N Interrupts are disabled automatically but
are never enabled by this routine.
0010
Name CHRGTB
F Gets next character (on token) from BASIC text.
E HL
R HL points to next characted, A has the
character. Carry flag set if number,Z flag
set if end of statesment encountered.
M AF,HL.
0014
Name WRTSLT
F Select the appropriate slot according to the
value given through registers, and writes to
memory.
E A: FxxxSSPP.(see RDSLT).
HL: Address of target memory.
E: Data to be written.
R None.
M AF,BC,D
N (see RDSLT)
0018
Name OUTDO
F Output to the current device.
E A,RTFIL,PRTPGL.
R None.
M None.
001C
Name CALSLT
F Performs inter-slot call to specified address.
E IY -FxxxSSPP (high) (see RDSLT)
IX: Adress to call
R None
M None
N Interrupt are disabled automatically but
never enabled to this routine. Argument can
never be passed via the alternate registers of
Z80 or IX and IY.
0020
Name DCOMPR
F Compare HL with DE.
E HL,DE.
R Flag.
M AF.
0024
Name ENASLT
F Select the appropriate slot according to the
value given through registers,and permanently
enables the slot
E A: FxxxSSPP.
HL:Address of target memory.
R None.
M All.
N (see RDSLT)
0028
Name GETYPR
F Return the type FAC.
E FAC.
R Flags.
M AF.
0030
Name CALLF
F Performs far_call (i.e. inter-slots call)
E None
R Flags.
N The calling sequence is as follows.
RST 6
DB Destination slot.
DW Destination address.
(see CALSLT)
0038
Name KEYINT
F Performs hardware interrupt procedures.
E None.
R None.
M None.
;-----------------------------------------------------------
The following routined are used for I/O initialization.
;-----------------------------------------------------------
003B
Name INITIO
F Performed devise initialization.
E None
R None
M All
003E
Name INIFNK
F Initializes function key strings.
E None
R None
M All
;-----------------------------------------------------------
The following routined are used to access the VDP (T19918)
;-----------------------------------------------------------
0041
Name DISSCR
F Disables screen display.
E None
R None
M AF,BC
0044
Name ENASCR
F Enables screen display.
E None
R None
M AF,BC
0047
Name WRTVDP
F Writes to the VDP register.
E Register in C,data in B.
M AF,BC.
004A
Name RDVRM
F Reads the VRAM address by [HL].
E HL.
R A
M AF
004D
Name WRTVRM
F Write to the VRAM address by [HL].
E HL,A.
R None
M AF
0050
Name SETRD
F Sets up the VDP for read.
E HL
R None
M AF
0053
Name SETWRT
F Sets up the VDP for write.
E HL
R None
M AF
0056
Name FILVRM
F fill the vram with specified data
E addres [HL] , length [BC], data [a]
R none
M All
0059
Name LDIRMV
F Moves a VRAM memory block to memory.
E Address of sourse [HL], destanation [DE]
lenght [BC] .
R none
M All
005C
Name LDIRMV
F Move blok of memery from memory to Vram
E sourse [HL], destanation [DE], length [BC]
R None
M All
005F
Name CHGMOD
F Sets the VDP mode according to SCRMOD.
E SCRMOD (0...3)
R None
M All
0062
Name CHGCLR
F Changes the color of the screen.
E Foreground color in FOBCLR.
Background color in BAKCLR.
Border color in BDRCLR
R None
M All
0066
Name NMI
F Performs non-maskable interrupt procedures.
E None
R None
M None
0069
Name CLRSPR
F Initializes all sprites.
Patterns are set to nulls,sprite names are
set to sprite plane number,sprite colors are
set to foregroup color,vertical positions are
set to 209
E SCRMOD
R None
M All
006C
Name INITXT
F Initializes screen for text mode (40*24) and
sets the VDP.
E TXTNAM,TXTCGP.
R None.
M All
006F
Name INIT32
F Initializes screen for text mode (32*24) and
sets the VDP.
E T32NAM,T32GRP,T32COL,T32ATR,T32PAT.
R None
M All
0072
Name INIGRP
F Initializes screen for high-resolution mode
and sets the VDP.
E GRPNAM,GRPCGP,GRPCOL,GRATR,GRPPAT.
R None
M All
0075
Name INIMLT
F Initializes screen for multi-color mode and
sets the VDP.
E MLTNAM,MLTCGP,MLTCOL,MLTATR,MLTPAT.
R None
M All
0078
Name SETTXT
F Sets the VDP for text (40*24) mode.
E TXTNAM,TXTCGT.
R None
M All
007B
Name SETT32
F Sets the VDP for text (32*24) mode.
E T32NAM,T32CGT,T32COL,T32ATR,T32PAT.
R None
M All
007E
Name SETGRP
F Sets the VDP for high-resolution mode.
E GRPNAM,GRPCGP,GRPCOL,GRPATR,GRPPAT.
R None
M All
0081
Name SETMLT
F Sets the VDP for multicolor mode.
E MLTNAM,MLTCGRP,MLTCOL,MLTATR,MLTPAT.
R None
M All
0084
Name CALPAT
F Returns address of sprite pattern table.
E Sprite ID in [Acc].
R Address in [HL]
M AF,DE,HL.
0087
Name CALATR
F Returns address of sprite atribute table.
E Sprite ID in [Acc].
R Address in [HL].
M AF,DE,HL.
008A
Name GSPSIZ
F Returns the current sprite size.
E None.
R Sprite size(# of bytes) in [Acc].
Carry set if 16*16 sprite is use,otherwise
reset the otherwise.
M AF
008D
Name GRPPRT
F Prints a character on the graphic screen.
E Code to output in [Acc].
R None
M None
;-----------------------------------------------------------
The following routined are used to access the PSG.
;-----------------------------------------------------------
0090
Name GICINI
F Initializes PSG,and static data for PLAY
statement.
E None.
R None.
M All
0093
Name WRTPSG
F Writes data to the PSG register.
E Register number in [Acc],data in [E].
R None
M None
0096
Name RDPSG
F Reads data from PSG register.
E Register number in [Acc].
R Data in [Acc].
M None.
0099
Name STRTMS
F Checks/starts background tasks for PLAY.
E None
R None
M All
;-----------------------------------------------------------
The following routined are used to access the console,
i.e. the keyboard and the CRT.
;-----------------------------------------------------------
009C
Name CHSNS
F Check the status of keyboard buffer.
E None
R Z flag reset if any character in buffer.
M AF
009F
Name CHGET
F Waits for character being input and returns
the character codes.
E None.
R Character code in [Acc].
M AF
00A2
Name CHPUT
F Outputs a character to the console.
E Character code to be output in [Acc].
R None
M None
00A5
Name LPTOUT
F Output a character to the line printer.
E Character codes to the output in [Acc].
R Carry flag set if aborted.
M F
00A8
Name LPTSTT
F Check the line priter status.
E None.
R FF in [Acc] and Z flag reset if priter ready.
0 and Z flag set if not.
M AF.
00AB
Name SNVCHR
F Check graphic header byte and converts codes.
E Character code in [Acc].
R Cy flag reset: graphic header byte
Cy and Z flags set converted graphic code.
Cy flag set,Z flag reset,non-converted code.
M AF.
00AE
Name PINLIN
F Accepts a line from console until a CR or STOP
is typed,and stores the line in a buffer.
E None
R Address of buffer top-1 in [HL],carry flag
sets if STOP is input.
M All.
00B1
Name INLIN
F Same as PINLIN,exept if AUTFLO if set.
E None
R Address of buffer top-1 in [HL],carry flag
set if STOP is input.
M All
00B4
Name QINLIN
F Output a '?' mark and a space then falls into
the INLIN routine.
E None
R Address of buffer top-1 in [HL],carry flag
set if STOP is input.
M All.
00B7
Name BREAKX
F Check the status of the Control-STOP key.
E None
R Carry flag set if being pressed.
M AF
N This routine is used to check Control-STOP
when interrupt are disabled.
00BA
Name ISCNTC
F Check the status of the SHIFT-STOP key.
E None
R None
M None
00BD
Name CKCNTC
F Same as ISCNTC,used by BASIC
E None
R None
M None
00C0
Name BEEP
F Sounds the buffer
E None
R None
M All
00C3
Name CLS
F Clear the screen.
E None.
R None.
M AF,BC,DE.
00C6
Name POSIT
F Locate cursor at the specified position.
E Column in [H],row in [L]
R None
M AF
00C9
Name FNKSB
F Check if function key display is active. If
it is,it display it,otherwise does nothing.
E FNKFLG
R None
M All
00CC
Name ERAFNK
F Erased the function key diplay.
E None
R None
M All
00CF
Name DSPFNK
F Display the function key display.
E None
R None
M All
00D2
Name TOTEXT
F Forcidly places the screen in text mode.
E None
R None
M All
;-----------------------------------------------------------
The following routined are used for game I/O access.
;-----------------------------------------------------------
00D5
Name GTSTCK
F Return the current joystick status.
E Joystick ID in [Acc]
R Direction in [Acc]
M All
00D8
Name GTTRIG
F Return the current trigger button status.
E Trigger button in ID in [Acc].
R Return 0 in [Acc] if not pressed,255
otherwise.
M AF
00DB
Name GTPAD
F Check the current touch PAD status.
E ID in [Acc]
R Value in [Acc]
M All
00DE
Name GTPDL
F Return the value of the paddle.
E Padle ID in [Acc].
R Value in [Acc]
M All
;-----------------------------------------------------------
The following routined are used to access the cassette tape.
;-----------------------------------------------------------
00E1
Na 3) A jump to 'Device I/O error' is made when
aborted.
0150
Name GETVCP
F
E
R
M
N Used only to play music in the background.
0153
Name GETVC2
F
E
R
M
N Used only to play music in barcground.
0156
Name KILBUF
F Clears the keyboard buffer.
E None
R None
M HL
0159
Name CALBAS
F Performs far_call (i.e.inter-slot call) into
the BASIC interpreter.
E Address in [IX]
R
M
;-----------------------------------------------------------
The following is a a patch area for BIOS.It is placed here to
make it easier to add new entry vector.
|