Shared_Includes/constants/BIOS_equ.inc
2025-04-18 01:38:00 +10:00

338 lines
14 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

; ‘âப  ID ¡ãâ«® ¤¥à 
MACRO _mSYSID
DZ 'Starting...' ; ¯¥à¢ë© ᨬ¢®« ¢ § £àã§ç¨ª¥ Ž‘ § ¬¥­ï¥âáï ­  ­®¬¥à áâ à⮢®£® ¤à ©¢ , ¢â®à®© ­  ­®¬¥à  ªâ¨¢­®£® § £à㧮筮£® à §¤¥« 
ENDM
;
;[‚ë§®¢ ä㭪権]----------------------------------------;
ToBIOS EQU #08 ; ¤«ï ¢ë§®¢  ¨§ އ“ ¢ SLOT0 (­ ¯à¨¬¥à ¨§ DSS)
ToBIOS_18 EQU #18 ; ¤«ï ¢ë§®¢  ¨§ 8-© áâà ­¨æë <20>‡“ ¢ SLOT0
ToBIOS_3D13 EQU #3D13 ; ¤«ï ¢ë§®¢  ¨§ 8-© áâà ­¨æë <20>‡“ ¢ SLOT0
ToBIOS_FromEXT EQU #3FD0 ; ¤«ï ¢ë§®¢  ¨§ 0-© áâà ­¨æë <20>‡“ ¢ SLOT0
;-------------------------------------------------------;
MODULE BIOS
;BIOS:
;[”㭪樨 à ¡®âë á ¯ ¬ïâìî]-----------------------------;
GetMemSize EQU #C0 ;#90 ; Ž¯à¥¤¥«¥­¨¥ ®¡ê¥¬®¢ އ“
InitMem EQU #C1 ;#91 ; ˆ­¨æ¨ «¨§ æ¨ï à á¯à¥¤¥«¥­¨ï ¯ ¬ïâ¨.
GetMem EQU #C2 ; ‚뤥«¥­¨¥ ¡«®ª  އ“
FreeMem EQU #C3 ; Žá¢®¡®¤¨âì ¡«®ª އ“
GetMemPage EQU #C4 ; <20>®«ãç¨âì 䨧¨ç¥áª¨© ­®¬¥à áâà ­¨æë ¨§ ¡«®ª  ¯ ¬ïâ¨
GetMemBlkPages EQU #C5 ; <20>®«ãç¨âì ᯨ᮪ 䨧¨ç¥áª¨å áâà ­¨æ ¡«®ª 
GetBanksPorts EQU #C6 ; <20>®«ã祭¨¥  ¤à¥á®¢ ¯®à⮢ ®ª®­
GetMemPageNext EQU #C7 ; <20>®«ãç¨âì ­®¬¥à á«¥¤ãî饩 áâà ­¨æë ¡«®ª  ¯® ¯à¥¤ë¤ã饬ã ü
GET_RAMD_NUM EQU #9B ; <20>®«ãç¨âì ­®¬¥à RAM-Disk-  (0..15) ¯® ¥£® block id
SWAP_RAM_DRIVES EQU #9C ; C¬¥­¨âì ­ ¡®à à ¬¤¨áª®¢ ZX <-> Sp2000
.Sp2000 EQU #009C ; <20>¥¦¨¬ à ¬¤¨áª®¢ Sp2000
.ZX EQU #FF9C ; <20>¥¦¨¬ à ¬¤¨áª®¢ ZX Spectrum mode
.Info EQU #FE9C ; “§­ âì ª ª®© ०¨¬ <20>€Œ ¤¨áª®¢ ãáâ ­®¢«¥­
DivMemBlocks EQU #9D ; <20> §¤¥«¥­¨¥ ¡«®ª 
MergeMemBlocks EQU #9E ; ‘«¨ï­¨¥ ¡«®ª®¢
;[<5B> ¡®â  á ¡«®ª ¬¨ އ“, ª ª á RAM-Disks]----------------;
BLK_RD_WR EQU #C8 ; —⥭¨¥/§ ¯¨áì ¨§/¢ ¡«®ª ¯ ¬ï⨠ᥪâ®à ¬¨ ¯® 256 ¡ ©â
GetMemRMD EQU #92 ; <20>®«ãç¨âì ¡«®ª ¯ ¬ï⨠N bytes ¤«ï RAM-Disk' 
FreeMemRMD EQU #93 ; Žá¢®¡®¤¨âì ¡«®ª ¯ ¬ï⨠¤«ï RAM-Disk' 
GetMemPageRMD EQU #94 ; <20>®«ãç¨âì 䨧¨ç¥áª¨© ­®¬¥à áâà ­¨æë RAM-Disk' 
RAMD_CALC_PAGE EQU #98 ; ‚ëç¨á«¥­¨¥ áâà ­¨æë ¨  ¤à¥á  ¢ RAM-Disk ¯®  ¡á®«îâ­®¬ã ­®¬¥àã ᥪâ®à 
BLK_TO_RAMD EQU #C9 ; <20> §­ ç¨âì ¡«®ª ¯ ¬ï⨠RAM-Disk-ã
RAMD_CLEAR EQU #CA ; Žá¢®¡®¤¨âì RAM-Disk
GET_RAMD_ST EQU #CE ; <20>®«ã祭¨¥ ¨¤¥­â¨ä¨ª â®à  ¡«®ª , ­ §­ ç¥­­®£® ­  RAM-Disk
;[“¯à ¢«¥­¨¥ ­ §­ ç¥­¨¥¬ ­  ¤¨áª®¢®¤ë]------------------;
SET_DISK_REDIR EQU #99 ; <20> §­ ç¥­¨¥ ­  ⥪ã騩 «®£¨ç¥áª¨© ¤¨áª®¢®¤ TR-DOS § ¤ ­­®£® ¤à ©¢  (áâ à ï äã­ªæ¨ï ¤«ï TR-DOS!)
GET_DISK_REDIR EQU #9A ; ¯®«ãç¨âì ⨯ ­ §­ ç¥­¨ï ­  ⥪ã騩 «®£¨ç¥áª¨© ¤¨áª®¢®¤ TR-DOS (áâ à ï äã­ªæ¨ï ¤«ï TR-DOS!)
RAMD_TO_DRV EQU #CB ; <20> §­ ç¥­¨¥ RAM-Disk ­  ¤¨áª®¢®¤ TR-DOS
FDD_TO_DRV EQU #CC ; <20> §­ ç¥­¨¥ 䨧¨ç¥áª®£® ¤¨áª®¢®¤  ­  «®£¨ç¥áª¨© TR-DOS
HDD_TO_DRV EQU #CD ; <20> §­ ç¥­¨¥ ¢¨­ç¥áâ¥à  ­  ¤¨áª®¢®¤ TR-DOS
GET_DRV_ST EQU #CF ; <20>®«ãç¨âì ⨯ ­ §­ ç¥­¨ï ­  «®£¨ç¥áª¨© ¤¨áª®¢®¤ TR-DOS
;[“¯à ¢«¥­¨¥ ®ª­ ¬¨ ¨ ०¨¬ ¬¨ íªà ­ ]------------------;
WIN_OPEN EQU #B0 ; ”ã­ªæ¨ï ®âªàëâ¨ï ®ª­ .
WIN_CLOSE EQU #B1 ; § ªàë⨥ ®ª­ 
WIN_COPY EQU #B2 ; Š®¯¨à®¢ ­¨¥ ¤ ­­ëå ⥪á⮢®£® ®ª­  ¢ ¯ ¬ïâì (§ ¯®¬¨­ ­¨¥ ®ª­ )
WIN_RESTORE EQU #B3 ; Š®¯¨à®¢ ­¨¥ ¨§ ¯ ¬ï⨠¢ ⥪á⮢®¥ ®ª­® (¢®ááâ ­®¢«¥­¨¥ ®ª­ )
WIN_GET_SYM EQU #B4 ; ‚§ïâì ᨬ¢®« á íªà ­ 
WIN_PUT_SYM EQU #B5 ; <20>®«®¦¨âì ᨬ¢®« ­  íªà ­ á  âਡã⮬ ¨ §­ ª®£¥­¥à â®à®¬
.OnlySymbol EQU #00B5 ; <20>®«®¦¨âì ᨬ¢®« ­  íªà ­
.NoChangeZG EQU #01B5 ; <20>®«®¦¨âì ᨬ¢®« ­  íªà ­ á  âਡã⮬
WIN_SET_ZG EQU #B6 ; ãáâ ­®¢ª  §­ ª®£¥­¥à â®à 
WIN_MOVE EQU #B7 ; <20>¥à¥¬¥é¥­¨¥ ®ª­ 
WIN_GET_ZG EQU #B8 ; <20>®«ã祭¨¥ §­ ª®£¥­¥à â®à 
;[”㭪樨 ¯¥ç â¨ ¨ ã¯à. ०¨¬®¬ íªà ­ ]-----------------;
LP_OPEN_S EQU #80 ; Žâªàë⨥ áâ ­¤ àâ­ëå ®ª®­.
.ZX_32x24_Default EQU #0080 ; ᯥªâà㬮¢áª®¥ ®ª­® 32x24
.TXT_64x24_Default EQU #0180 ; ⥪á⮢®¥ ®ª­® 64x24
.TXT_40x32_Default EQU #0280 ; ⥪á⮢®¥ ®ª­® 40x24
.TXT_80x32_Default EQU #0380 ; ⥪á⮢®¥ ®ª­® 80x32
.ZX_32x24 EQU #0480 ; ᯥªâà㬮¢áª®¥ ®ª­®, HL - ¯®«®¦¥­¨¥ ®ª­ 
.TXT_64x24 EQU #0580 ; ⥪á⮢®¥ ®ª­® 64x24, HL - ¯®«®¦¥­¨¥ ®ª­ 
.TXT_40x32 EQU #0680 ; ⥪á⮢®¥ ®ª­® 40x32, HL - ¯®«®¦¥­¨¥ ®ª­ 
.TXT_80x32 EQU #0780 ; ⥪á⮢®¥ ®ª­® 80x32, HL - ¯®«®¦¥­¨¥ ®ª­ 
.Graf_0 EQU #0880 ; £à ä¨ç¥áª®¥ ®ª­® 0, HL - ¯®«®¦¥­¨¥ ®ª­ 
.Graf_1 EQU #0980 ; £à ä¨ç¥áª®¥ ®ª­® 1, HL - ¯®«®¦¥­¨¥ ®ª­ 
LP_PRINT_ALL EQU #81 ; <20>¥ç âì ᨬ¢®«®¢ á  âਡã⮬
LP_PRINT_SYM EQU #82 ; ‚뢮¤ ᨬ¢®«®¢ ­  íªà ­ ¡¥§  âਡãâ 
LP_PRINT_ATR EQU #83 ; ¯¥ç âì  âਡã⮢
LP_SET_PLACE EQU #84 ; “áâ ­®¢ª  ⥪ã饣® §­ ª®¬¥áâ  ¢ ®ª­¥
LP_PRINT_LINE EQU #85 ; ‚뢮¤ áâப¨ ᨬ¢®«®¢ ­  íªà ­ á ⥪ã饣® §­ ª®¬¥áâ 
LP_PRINT_LINE2 EQU #86 ; ‚뢮¤ áâப¨ ᨬ¢®«®¢ ­  íªà ­ ¡¥§  âਡã⮢
LP_PRINT_LINE3 EQU #87 ; ‚뢮¤ áâப¨ ᨬ¢®«®¢ ¤® à §¤¥«¨â¥«ï
LP_PRINT_LINE4 EQU #88 ; ‚뢮¤ áâப¨ ᨬ¢®«®¢ ¤® à §¤¥«¨â¥«ï, ¡¥§  âਡã⮢
LP_CLS_WIN EQU #89 ; Žç¨á⪠ íªà ­ 
LP_SCROLL_UD EQU #8A ; ‘ªà®««¨­£ ç á⨠£«®¡ «ì­®£® ®ª­  ¢¢¥àå/¢­¨§
LP_PRINT_LINE5 EQU #8B ; ‚뢮¤ áâப¨ ᨬ¢®«®¢ ­  íªà ­ ¤® à §¤¥«¨â¥«ï
LP_PRINT_LINE6 EQU #8C ; ‚뢮¤ áâப¨ ᨬ¢®«®¢ ­  íªà ­ ¤® à §¤¥«¨â¥«ï ¡¥§  âਡã⮢
LP_CLS_WIN2 EQU #8D ; Žç¨á⪠ íªà ­  á 㪠§ ­¨¥¬ ᨬ¢®«  § ¯®«­¥­¨ï
LP_GET_PLACE EQU #8E ; <20>®«ãç¨âì ⥪ã饥 ¯®«®¦¥­¨¥ ¢ë¢®¤  ­  íªà ­
LP_PR_LINE_DIR EQU #E0 ;!TODO ­¥¤®¤¥« ­ . <20>¥ç âì "¢ ª®­á®«ì" ¤® à §¤¥«¨â¥«ï
;[ƒà ä¨ç¥áª¨¥ ä㭪樨]----------------------------------;
PIC_POINT EQU #A1 ; “áâ ­®¢¨âì â®çªã
PIC_SET_PAL EQU #A4 ; “áâ ­®¢ª  ¯ «¨âàë
PIC_GET_PAL EQU #A4 ; —⥭¨¥ ¯ «¨âàë (­®¬¥à â ª®© ¦¥ ª ª ã .PIC_SET_PAL)
SET_PAL_INIT EQU #A6 ; “áâ ­®¢ª  ¢­ãâ७­¥© ¯ «¨âàë
.CGA EQU 3*256 + SET_PAL_INIT
.ZX EQU 2*256 + SET_PAL_INIT
.GRAPHIC EQU 1*256 + SET_PAL_INIT
;[<5B> ¡®â  á HDD. #4X (fast)]-----------------------------;
HDD_INIT EQU #40 ; ˆ­¨æ¨ «¨§ æ¨ï ¢¨­ç¥áâ¥à 
HDD_RECAL EQU #41 ; <20>¥ª «¨¡à®¢ª  ¢¨­ç¥áâ¥à 
HDD_TEST_IDE EQU #42 ; ’¥áâ ­ «¨ç¨ï ¨­â¥àä¥©á  IDE
HDD_PREPARE EQU #43 ; <20>®¤£®â®¢ª  ¢¨­ç¥áâ¥à  ª ®¯¥à æ¨¨ ç⥭¨ï/§ ¯¨á¨
HDD_READ_BPB EQU #44 ; —¨â âì BPB ¯¥à¢®£® à §¤¥« 
HDD_READ EQU #45 ; —¨â âì ᥪâ®à  á ¢¨­ç¥áâ¥à 
HDD_WRITE EQU #46 ; <20>¨á âì ᥪâ®à  ­  ¢¨­ç¥áâ¥à
HDD_PART EQU #47 ; <20> áâனª  ¯ àâ¨æ¨© ¨ master/slave
HDD_READ_NEXT EQU #48 ; —¨â âì á«¥¤ãî騩 ᥪâ®à (ONLY FOR LBA!)
;[<5B> ¡®â  á HDD ¨ ¤¨áª®¢®¤ ¬¨. #5X]----------------------;
DRV_RESET EQU #51 ; ‘¡à®á ª®­â஫«¥à  ¨ ­ áâனª  ­  ¤¨áª
DRV_READ_LONG EQU #52 ; —⥭¨¥ á ãáâனá⢠¢ 㪠§ ­­ãî áâà ­¨æã
DRV_WRITE_LONG EQU #53 ; ‡ ¯¨áì ­  ãáâனá⢠ ¢ 㪠§ ­­ãî áâà ­¨æã
DRV_VERIFY EQU #54 ; <20>஢¥àª  ᥪâ®à®¢
DRV_READ EQU #55 ; —⥭¨¥ á ãáâனá⢠
DRV_WRITE EQU #56 ; ‡ ¯¨áì ­  ãáâனá⢠
DRV_DETECT EQU #57 ; Ž¯à¥¤¥«¥­¨¥ ¯ à ¬¥â஢ ãáâனá⢠
DRV_GET_PAR EQU #58 ; <20>®«ãç¨âì ¯ à ¬¥âàë ­®á¨â¥«ï
DRV_SET_PAR EQU #59 ; “áâ ­®¢¨âì ¯ à ¬¥âàë ­®á¨â¥«ï
DRV_VERSION EQU #5A ; <20>®¬¥à ¢¥àᨨ ¤¨áª®¢®© ᯥæ¨ä¨ª æ¨¨.
DRV_EXTENDED EQU #5E ; <20> áè¨à¥­­ë¥ ä㭪樨 ¤«ï ¤à ©¢®¢ ; [x] 21/12/2023
.ATAPI_Eject EQU #005E ; Žâªàëâì «®â®ª CD
.ATAPI_Close EQU #015E ; ‡ ªàëâì «®â®ª CD
.ATAPI_Request_Sense EQU #025E ; [ ]
.ATAPI_Custom_PCMD EQU #035E ; [ ]
DRV_LIST EQU #5F ; ‘¯¨á®ª ¤¨áª®¢ëå ãáâனáâ¢
;-------------------------------------------------------;
;[“¯à ¢«¥­¨¥ ¦¥«¥§®¬, ®¯à. ¢¥àᨨ]----------------------;
FN_TURBO EQU #8F ; ”ã­ªæ¨ï ã¯à ¢«¥­¨ï âãà¡® ०¨¬®¬ ¨ FDD 720/1440
.OFF EQU #02 ;
.ON EQU #03 ;
.VG.OFF EQU #12 ;
.VG.ON EQU #13 ;
CheckInit EQU #97 ; …᫨ ®¡­ à㦥­ ¯¥à¢ë© áâ àâ, â® ¨­¨æ¨ «¨§ æ¨ï ¢á¥© ¯ ¬ïâ¨, á¨á⥬­ëå ¯¥à¥¬¥­­ëå
FullInit EQU #9F ; ˆ­¨æ¨ «¨§ æ¨ï ¢á¥© ¯ ¬ïâ¨, á¨á⥬­ëå ¯¥à¥¬¥­­ëå
FN_CRIPT EQU #ED ; ”ã­ªæ¨ï ¨¤¥­â¨ä¨ª æ¨¨ ¬ â¥à¨­áª®© ¯« âë ¨ ª®­ä¨£ãà æ¨¨
.BoardNumber EQU #01ED ; ‚ë¤ ç  ¯®«­®£® Board Number
.AcexAndBitstream EQU #02ED ; ‚ë¤ ç  ¬®¤¥«¨ ACEX ¨ ¢¥àᨨ ¡¨âáâਬ  ¢ ROM
RST_CONF: ; ; ;
.AY8910 EQU #EE ; ¤«ï ᮢ¬¥á⨬®á⨠á á®ä⮬ Sp97, ¯¥à¥ª«î祭¨¥ ¢ ª®­äã AY8910
.SP97_1 EQU #F0 ; ¤«ï ᮢ¬¥á⨬®á⨠á á®ä⮬ Sp97, ¯¥à¥ª«î祭¨¥ ¢ ª®­äã Sprinter-1
.SP97_2 EQU #F1 ; ¤«ï ᮢ¬¥á⨬®á⨠á á®ä⮬ Sp97, ¯¥à¥ª«î祭¨¥ ¢ ª®­äã Sprinter-2
.CUSTOM EQU #F3 ; ¯¥à¥ª«î祭¨¥ ª®­ä¨£ãà æ¨¨ ¯®«ì§®¢ â¥«ï. SPRINTER_ALL
; ; ; ;
FN_VERSION EQU #EF ; ‚ë¤ ç  ¨­ä®à¬ æ¨¨ ® ¢¥àᨨ BIOS  ¨ ¦¥«¥§ . ¡ãä¥à¥ ¡ã¤¥â:
.STR.FirmwareName EQU 1 ; ü ¯®«ï á ­ §¢ ­¨¥¬ ¯à®è¨¢ª¨
.STR.PC_Name EQU 2 ; ü ¯®«ï á ­ §¢ ­¨¥¬ ª®¬¯ìîâ¥à 
.STR.BitstreamVer EQU 3 ; ü ¯®«ï á ¢¥àᨥ© ¡¨âáâਬ  ¢ <20>‡“
FN_SYNC EQU #F2 ; “áâ ­®¢ª  ᨭåà®­¨§ æ¨¨, ®ç¨á⪠ áâà ­¨æë ०¨¬  íªà ­ 
DCP_CONFIG EQU #F4 ; ”ã­ªæ¨ï ã¯à ¢«¥­¨ï ¤¥è¨äà â®à®¬ ¯®à⮢. ;[x] BIOS 3.05 + ­®¢ ï ¯®¤äã­ªæ¨ï
CMOS_TEST EQU #F5 ; <20>஢¥à¨âì ­ «¨ç¨¥ CMOS
CMOS_RD EQU #F6 ; —¨â âì ¨§ ॣ¨áâà  CMOS
CMOS_WR EQU #F7 ; <20>¨á âì ¢ ॣ¨áâà CMOS
SET_PORTS EQU #F8 ; “áâ ­®¢ª  ¢­ãâ७­¨å ¯®à⮢. ”ã­ªæ¨ï ¢ à §à ¡®âª¥
READ_PORTS EQU #F9 ; —⥭¨¥ ¢­ãâ७­¨å ¯®à⮢. ;[x] 26/01/2024
GOTO_SPECTRUM EQU #FB ; [ ] ¤®ª®¢ëàïâì
ZX_MEMORY_MANAGER EQU #FC ; [ ] free zx pages!
.FreeZXvPages.All EQU #40FC
.FreeZXvPages.vRAM EQU #41FC
.FreeZXvPages.vROM EQU #42FC
.GetMem.Pent48 EQU #01FC
.GetMem.Pent128 EQU #02FC
.GetMem.Pent512 EQU #03FC
.GetMem.Scorp EQU #04FC
.SetCustomVroms EQU #80FC
;
; .MODE_48k EQU 3
; .MODE_128k EQU 3+5
; .MODE_256k EQU 3+13
; .MODE_512k EQU 3+29
.MODE_48k EQU 3
.MODE_128k EQU 5
.MODE_256k EQU 13
.MODE_512k EQU 29
REINIT EQU #FD ; [x] restart, soft/hard reset, reinit RAM ID for spectrum pages
.RESTART EQU #01FD ;
.SOFT_RESET EQU #02FD ;
.HARD_RESET EQU #03FD ;
.FREE_NO_ZX_MEM EQU #04FD ; ®ç¨áâ¨âì ¯ ¬ïâì ªà®¬¥ áâà ­¨æ ZX-MODE
;-----------------------------------------------;
;
;----------------[ EROOR CODES ]----------------;
Error: ;
.NoErrors EQU 0 ;
.InvalidSubFunction EQU 1 ;
.BadNumber EQU 2 ; of drive or ramblock
.UnknownDevice EQU 3 ;
.NotReady EQU 4 ;
.Seek EQU 5 ;
.SectorNotFound EQU 6 ; or No Disk
.CRC EQU 7 ;
.WriteProtect EQU 8 ;
.Read EQU 9 ;
.Write EQU 10 ;
.Failure EQU 11 ;
.Busy EQU 12 ; DEVICE OPENED
;reserved EQU 13 ;
;reserved EQU 14 ;
;reserved EQU 15 ;
;reserved EQU 16 ;
;reserved EQU 17 ;
;reserved EQU 18 ;
;reserved EQU 19 ;
;reserved EQU 20 ;
;reserved EQU 21 ;
;reserved EQU 22 ;
;reserved EQU 23 ;
;reserved EQU 24 ;
;reserved EQU 25 ;
;reserved EQU 26 ;
;reserved EQU 27 ;
;reserved EQU 28 ;
;reserved EQU 29 ;
;reserved EQU 30 ;
.NotSupported EQU 31 ;
;
Error.EMM: ;
.InvalidBlockID EQU 0 ;
.NoMemory EQU 1 ;
;
Error.ATAPI EQU #20 ; MASK
;.bit EQU 5 ; Bit of MASK
.NoSence EQU #00 + Error.ATAPI
.RecoveredError EQU #01 + Error.ATAPI
.NotReady EQU #02 + Error.ATAPI
.MediumError EQU #03 + Error.ATAPI
.HardwareError EQU #04 + Error.ATAPI
.IllegalRequest EQU #05 + Error.ATAPI
.UnitAttention EQU #06 + Error.ATAPI ; MediaChanged
.DataProtect EQU #07 + Error.ATAPI
; EQU #08 + Error.ATAPI
; EQU #09 + Error.ATAPI
; EQU #0A + Error.ATAPI
.AbortedCommand EQU #0B + Error.ATAPI
; EQU #0C + Error.ATAPI
; EQU #0D + Error.ATAPI
.Miscompare EQU #0E + Error.ATAPI
; EQU #0F + Error.ATAPI
.TimeOut EQU #10 + Error.ATAPI
;
; Error.ATAPI EQU #70
; .NoSence EQU #70
; .RecoveredError EQU #71
; .NotReady EQU #72
; .MediumError EQU #73
; .HardwareError EQU #74
; .IllegalRequest EQU #75
; .UnitAttention EQU #76 ; MediaChanged
; .DataProtect EQU #77
; ; EQU #78
; ; EQU #79
; ; EQU #7A
; .AbortedCommand EQU #7B
; ; EQU #7C
; ; EQU #7D
; .Miscompare EQU #7E
; ; EQU #7F
; .TimeOut EQU #80
;-----------------------------------------------;
; .NO_ERROR EQU #00 ; 00 - NO ERRORS
; .INVALID_COMMAND EQU #01 ; 01 - BAD COMMAND
; .INVALID_DRIVE EQU #02 ; 02 - BAD DRIVE NUMBER
; .UNKNOWN_FORMAT EQU #03 ; 03 - UNKNOW FORMAT
; .NOT_READY EQU #04 ; 04 - NOT READY
; .SEEK_ERROR EQU #05 ; 05 - SEEK ERROR
; .SECTOR_NOT_FOUND EQU #06 ; 06 - SECTOR NOT FOUND
; .CRC_ERROR EQU #07 ; 07 - CRC ERROR
; .WRITE_PROTECT EQU #08 ; 08 - WRITE PROTECT
; .READ_ERROR EQU #09 ; 09 - READ ERROR
; .WRITE_ERROR EQU #0A ; 10 - WRITE ERROR
; .GENERAL_FAILURE EQU #0B ; 11 - FAILURE
; .DEVICE_BUSY EQU #0C ; 12 - BUSY (DEVICE OPENED)
; ;.RESERVED EQU #0D ; 13 - RESERVED
;-----------------------------------------------;
;
;
;-----------------------[<5B><EFBFBD><E280A6>Ž<E2809A><EFBFBD>Ž!!!]----------------------
;=============================================================
; ..‚­ãâ७­ïï äã­ªæ¨ï..
; ®âªàëâì £à ä¨ç¥áª®¥ ®ª­®, á ®¯¨á â¥«¥¬ ¢ IX
; ­  ¬¥á⥠HL, E - áâà ­¨æ  ०¨¬ , ᥤ쬮© ¡¨â E - ०¨¬ BOND
; HL = X + Y*64 + #4000 + #1000*RGMOD. ¬¥áâ® ­  íªà ­¥ ¯® §­ ª®¬¥áâ ¬
; IX - ®¯¨á â¥«ì ®ª­ 
; E - bit0: ­®¬¥à íªà ­ 
.PIC_FN0_OpenWin EQU #A0
;=============================================================
;=============================================================
; ‚›‚Ž„ ˆ<E280B9>ˆˆ 'FILL' ¢å®¤: dE - ¢¥à⨪ «ì, HL - £®à¨§®­â «ì.
; IX - ¤«¨­  «¨­¨¨ ¢ â®çª å, A - 梥â
.PIC_FN2 EQU #A2
;=============================================================
;=============================================================
; ‚›‚Ž„ ˆ<E280B9>ˆˆ 'COPY' ¢å®¤: dE - ¢¥à⨪ «ì, IX - £®à¨§®­â.
; A',HL' -  ¤à¥á ¤ ­­ëå, ®âªã¤  ¡à âì ¤ ­­ë¥
; A' - áâà ­¨æ  RAM-Disk/MEM, HL' -  ¤à¥á ¢ áâà.2
; BC' - ¤«¨­  ¤ ­­ëå
; ‚ë室: HL',A' - á«¥¤ãî騩 ¡ ©â ¢ RAM-Disk !!!
.PIC_FN3 EQU #A3
;=============================================================
;=============================================================
; “<E28099>ŽŠ€ <E28098><EFBFBD>ˆ ‚›‚Ž„€ <20><20>Š<EFBFBD><EFBFBD> ‚室: E = 0/1
.PIC_FN5 EQU #A5
;=============================================================
;=============================================================
;!FIXIT ­¥¤®¤¥« ­­ë¥ !!!
; <20>¨á®¢ ­¨¥ «¨­¨©. … - ¢¥à⨪ «ì, HL - £®à¨§®­â «ì
; H' - ¢ëá®â , C'/DE',B' - add_parameters A - color
; C' = 80h, DE' = 0, B'=0 - ¤«ï ¢¥à⨪ «ì­ëå «¨­¨©
; €«£®à¨â¬:
; 1: <20>®áâ ¢¨âì â®çªã 梥⮬ D
; HL,C + DE,B -> HL,C
; dec H'
; jr nz,1
.PIC_FN7 EQU #A7
.PIC_FN8 EQU #A8
;=============================================================
;=============================================================
;/////// projected !!! ////////////////////////////////
; <20>¨á®¢ ­¨¥ á¯à ©â®¢
; E - ¢¥à⨪ «ì, IX - £®à¨§®­â «ì
; D - ª®¤ 㢥«¨ç¥­¨ï/㬥­ì襭¨ï
; B - ã¯à ¢«ïî騩 ª®¤
; 0 - ‚뢮¤ ¯®áâ®ï­­®£® á¯à ©â 
; 1 - ‚뢮¤ ¢à¥¬¥­­®£® á¯à ©â 
; 2 - ‚®ááâ ­®¢«¥­¨¥ ª à⨭ª¨ ¯®¤ ¢à¥¬¥­­ë¬ á¯à ©â®¬
; HL - Special coding data ( ¤ ­­ë¥ á¯à ©â  ä®à¬ , 梥â .. )
; flick-¯®¤®¡­ë© ä®à¬ â
.PIC_FN9 EQU #A9
;=============================================================
ENDMODULE ; BIOS
;-----------------------------------------------------------------------;