home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / lambda / soundpot / p / px8info.lbr / PXBIOS.AZM / PXBIOS.ASM
Encoding:
Assembly Source File  |  1993-10-25  |  4.1 KB  |  102 lines

  1. ;BIOS FUNCTION CALLS
  2.  
  3. DEF CBOOT    =0EC00h
  4. DEF WBOOT    =0EC03h
  5. DEF CONST    =0EC06h ;return in A 0=>buffer empty FFh=>not
  6. DEF DONST_OFFSET=3
  7. DEF CONIN    =0EC09h ;return in A waits for input  C=FUNCFLG for PFKs
  8. DEF CONIN_OFFSET=6
  9. DEF CONOUT    =0EC0Ch ;entry in C is output
  10. DEF CONOUT_OFFSET=9
  11. DEF LIST    =0EC0Fh ;entry in C is output waiting for LST: ready
  12. DEF LIST_OFFSET =0Ch
  13. DEF PUNCH    =0EC12h ;entry in C is output waiting for PUN: ready
  14. DEF PUNCH_OFFSET=0Fh
  15. DEF READER    =0EC15h ;return in A waiting for input
  16. DEF READER_OFFSET=12h
  17. DEF HOME    =0EC18h
  18. DEF HOME_OFFSET =15h
  19. DEF SELDSK    =0EC1Bh ;entry in C: 0=>A: . .8=>I:   HL= DPBlock
  20.             ;entry in E bit0  0=>1st access processes
  21.             ;return in HL 0=>error    OSRM 4-23
  22. DEF SELDSK_OFFSET=18h
  23. DEF SETTRK    =0EC1Eh ;entry BC=track number
  24. DEF SETTRK_OFFSET=1Bh
  25. DEF SETSEC    =0EC21h ;entry BC=sector number
  26. DEF SETSEC_OFFSET=1Eh
  27. DEF SETDMA    =0EC24h ;entry BC=DMA address
  28. DEF SETDMA_OFFSET=21h
  29. DEF READ    =0EC27h ;return in A  0=>ok
  30. DEF READ_OFFSET =24h
  31. DEF WRITE    =0EC2Ah ;entry in C  0=>standard  1=>unblocked    2=>sequential
  32. DEF WRITE_OFFSET=27h    ;return in A 0=>ok
  33. DEF LISTST    =0EC2Dh ;return in A 0=> LST:busy  FFh=> LST:ready
  34. DEF LISTST_OFFSET=2Ah
  35. DEF SECTRAN    =0EC30h ;entry in BD=logical: return in HL=physical
  36. DEF SECTRAN_OFFSET=2Dh
  37. DEF PSET    =0EC33h ;entry B=data C=operaion HL=VRAM address
  38.             ;return in A 0=>ok FFh=>~mode3    other=>address error
  39. DEF SCRNDUMP    =0EC36h ;return at F67Eh  0=>ok  FFh=>CTRL-STOPped
  40. DEF BEEP    =0EC39h ;entry C 0=>off or .1sec duration  HL=frequency
  41. DEF RSOPEN    =0EC3Ch
  42. DEF RSCLOSE    =0EC3Fh
  43. DEF RSINST    =0EC42h ;return in A  0=> no data  FFh=> data
  44. DEF RSOUTST    =0EC45h ;return in A  0=> transmit ok  FFh=> disabled
  45. DEF RSIN    =0EC48h ;return in A waits for input
  46. DEF RSOUT    =0EC4Bh ;entry in C
  47. DEF TIMDAT    =0EC4Eh ;entry in C=operation  DE=TIME_DESCRIPTOR address
  48.       ;operaton 0=>read time FFh=>set time 80h=>enable alarm
  49.       ; 81h=>disable alarm    82h=>alarm set 83h=>alarm reset 84h=>read alarm
  50.       ; 85h=>read next alarm 86h=>status
  51.     TIME_DESCRIPTOR:
  52.     TIME_YEAR:     BYTE 86h
  53.     TIME_MONTH:    BYTE 09h
  54.     TIME_DAY:      BYTE 15h
  55.     TIME_HOUR:     BYTE 12h
  56.     TIME_MINUTE:   BYTE 30h
  57.     TIME_SECOND:   BYTE 00
  58.     TIME_WEEK_DAY: BYTE O  ;0=>SUNDAY  6=>SATURDAY
  59.     MESSAGE_ADDR:  WORD MESSAGE
  60.     TIME_ALARM:    BYTE 0  ;0=> no 1=> yes
  61.     MESSAGE:       BYTE 0  ;to 40 bytes plus leading length byte
  62.  
  63. DEF MEMORY    =0EC51h ;not implemented
  64. DEF RSIOX    =0EC54h ;entry in C= operation    HL= parameter block
  65. ;operation 10h=>open 20h=>close 30h=>insts 40h=>outst 50h=>get from buffer
  66. ;       60h=>put to buffer 70h=>read DSR/CD 80h=>set DTR/RST
  67. ;       90h=>check error status  A0h=>sense busy
  68.     RSIOX_PARAMETERS:
  69.     BUFFER_ADDRESS: WORD RSIOX_BUFFR
  70.     BUFFER_SIZE:    WORD RSIOX_BUFFER_END-RSIOS_BUFFER
  71.     RSIOX_BAUD:    BYTE 0Fh;Fh=>19.2K.Eh=>9600,Dh=>4800,Ch=>2400 ...
  72.     BITS_PER_CHAR:    BYTE 2    ;2=>7,3=>8
  73.     RSIOX_PARITY:    BYTE 0    ;0=>none 1=>odd 2=>even
  74.     RSIOX_STOP:    BYTE 1    ;1=>1  3=>2
  75.     RSIOX_CTRL:    BYTE #ff ;bit0=DTR bit1=RTS bit2=SI/SO bit7=XON/XOFF
  76.     RSIOX_BUFFER:    BYTE 0,0 ;reserve number of bytes for buffer
  77.     RSIOS_BUFFER_END:
  78.  
  79. DEF LIGHTPEN    =0EC57h ;not implemented
  80. DEF MASK1    =0EC5Ah ;entry in B=0=>disable 1=>enable 2=>read :return in A
  81.             ;masks interrupts as set in register C
  82.             ; C:bit0=>7508 bit1=>8251 bit2=>rs232c DCD
  83.             ;   bit3=>in capt flag bit4=>time overflow bit5=>extern
  84. DEF LOADX    =0EC5Dh ;entry in C 0=>RAM 1=>ROM  HL=address  return in A
  85. DEF STORX    =0EC60h ;entry in C=0=>RAM HL=address    data in A
  86. DEF LDIRX    =0EC63h ;entry in A=0=>RAM 1=>ROM HL=source DE=dest BC=length
  87. DEF JUMPX    =0EC66h ;entry in X=jump address (F539h)=0=>RAM  1=>ROM
  88. DEF CALLX    =0EC69h ;entry in X=jump address (F539h)=0=>RAM  1=>ROM
  89. DEF GETPFK    =0EC6Ch ;entry in C=PFK   HL=string buffer
  90. DEF PUTPFK    =0EC6Fh ;entry in C=PFK   HL=string definition
  91. DEF ADCVRT    =0EC72h 
  92. ;entry in C=0=>A/D analog 1=>BCReader 2=>dip swch 4=>powr swtch/analog trigger
  93. DEF SLAVE    =0EC75h ;complicated
  94. DEF RDVRAM    =0EC78h ;entry in B=column C=line DE=length HL=destination
  95.             ;return in A=0=>ok
  96. DEF MCMTX    =0EC7Bh ;complicated
  97. DEF POWEROFF    =0EC7Eh ;C<- 0=>continue mode #FF=>restart mode
  98. DEF USERBIOS    =0EC81h
  99.  
  100. A=0=>ok
  101. DEF MCMTX    =0EC7Bh ;complicated
  102. DEF POWEROFF    =0EC7Eh ;C<- 0=>co