626 lines
14 KiB
NASM
626 lines
14 KiB
NASM
;------------[Begin of ROM]-------------
|
||
ROM_START:
|
||
DI
|
||
HALT
|
||
;---------------------------------------
|
||
|
||
;--------------[checksum]---------------
|
||
BLOCK 4-$,#FF
|
||
Check_Sum:
|
||
DB #FF,#FF,#FF,#FF ; ¬¥áâ® ¤«ï ª®â஫쮩 á㬬ë
|
||
;---------------------------------------
|
||
BLOCK #10-$,#FF
|
||
RET
|
||
;---------------------------------------
|
||
|
||
;!TODO ¯à¨ªàãâ¨âì ª ROM.BIOS
|
||
;----------------[int]------------------
|
||
BLOCK #38-$,#FF
|
||
INT: PUSH BC
|
||
PUSH AF
|
||
|
||
LD C,SLOT3
|
||
IN B,(C)
|
||
LD A,SYS_PAGE
|
||
OUT (C),A
|
||
|
||
LD A,(SYS_PAGE.INT_ID)
|
||
CP #AA
|
||
JR Z,YESINT
|
||
OUT (C),B
|
||
JR NOINT
|
||
YESINT: PUSH HL
|
||
LD HL,(SYS_PAGE.INT_ADRESS)
|
||
LD A,H
|
||
OR L
|
||
LD A,(SYS_PAGE.INT_PAGE)
|
||
OUT (C),B
|
||
CALL NZ,EXTINT
|
||
POP HL
|
||
NOINT: POP AF
|
||
POP BC
|
||
EI
|
||
RETI
|
||
;---------------------------------------
|
||
|
||
;----------------[NMI]------------------
|
||
_mInfoBLOCK #66-$,#FF
|
||
NMI: RETN
|
||
;---------------------------------------
|
||
|
||
;!FIXIT ¯¥à¥¥á⨠¢ ROM.BIOS ¨ ᤥ« âì
|
||
; â ª, ç⮡ ¬®£« ¯à ¢¨«ì® ¯àë£ âì ¢
|
||
; «î¡ë¥ á«®âë ¨ à ¡®â âì á DSS
|
||
;----------------[int]------------------
|
||
EXTINT: OR A
|
||
RET Z
|
||
|
||
;LD C,SLOT1
|
||
BIT 7,H
|
||
JR Z,.L2
|
||
LD C,SLOT2
|
||
BIT 6,H
|
||
JR Z,.L1
|
||
LD C,SLOT3
|
||
|
||
.L1: IN B,(C)
|
||
PUSH BC
|
||
OUT (C),A
|
||
CALL JPHL
|
||
POP BC
|
||
OUT (C),B
|
||
RET
|
||
; ¯à®¢¥àª ã«¥¢®© á«®â
|
||
.L2: BIT 6,H
|
||
LD C,SLOT1
|
||
JR NZ,.L1 ; ¯à®¤®«¦ ¥¬ ¥á«¨ ¥ã«¥¢®© á«®â
|
||
; ‚Ž’ ’“’ ŒŽ†<C5BD>Ž ‚‹“<E280B9>ˆ’œ <20><>Ž–…„“<E2809E>“ „‹Ÿ <20>Ž„‘’€<E28099>Ž‚Šˆ ‘’<E28098>€<EFBFBD>ˆ–› ‚ SLOT0 ˆ
|
||
; <20>…<EFBFBD>…•Ž„ <20>Ž <20><>…<EFBFBD>›‚€<E2809A>ˆž ‚ Ž<><C5BD>€<EFBFBD>Ž’—ˆŠ <20>Ž‹œ‡Ž‚€’…‹Ÿ —…<E28094>…‡ ¯à®æ¥¤ãàã áâíª, ¯à¨¬¥à
|
||
SCF
|
||
RET
|
||
JPHL: JP (HL)
|
||
;---------------------------------------
|
||
|
||
|
||
|
||
;
|
||
; _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ [___FOR ZX-MODE___] _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ ;
|
||
|
||
;
|
||
;----------------------------[ FOR ZX-MODE ]----------------------------;
|
||
IF BIOS_ZXMODE
|
||
;!HARDCODE íâ®â ¤à¥á #‘0 ¯àë£ ¥â ¢ vROM Basic-48 ¯® ¤à¥áã #3CF0
|
||
; ¬®¦® ¯®¯à®¡®¢ âì ¯¥à¥¤¥« âì íâ®â ¤à¥á â ¬
|
||
|
||
_mInfoBLOCK #C0-$,0
|
||
;BEGIN:
|
||
; ‚室 ç¥à¥§ USR 15600
|
||
RET_FROM_BIOS_TO_BASIC48:
|
||
CALL CH_2
|
||
CALL COMAND_LINE ; ‚›<E2809A>Ž‹<C5BD>…<EFBFBD>ˆ… ŠŽŒ€<C592>„›, …‘‹ˆ …‘’œ
|
||
; ‚室 ¡¥§ ª®¬ ¤ë
|
||
JP SW_ROM_1 ; ‚އ‚<E280A1>€’ ‚ << MAIN MENU >>
|
||
|
||
;-----------------------------------------------------------------------;
|
||
;
|
||
|
||
|
||
;
|
||
;----------------------------[ ??????????? ]----------------------------;
|
||
; TURBO_OFF:
|
||
; LD A,D_TBOFF
|
||
; OUT (SYS_PORT.ON),A
|
||
; RET
|
||
;
|
||
; TURBO_ON:
|
||
; LD A,D_TBON
|
||
; OUT (SYS_PORT.ON),A
|
||
; RET
|
||
;
|
||
; JP_HL: JP (HL)
|
||
;
|
||
;PRINT_LINE:
|
||
; LD A,(HL)
|
||
; INC HL
|
||
; CP 0FFh
|
||
; RET Z
|
||
; RST 10H
|
||
; JR PRINT_LINE
|
||
;
|
||
; JP RESET_128
|
||
;-----------------------------------------------------------------------;
|
||
;
|
||
|
||
|
||
;-----------------------------------------------------------------------;
|
||
; ******* SERVICE *******
|
||
;-----------------------------------------------------------------------;
|
||
|
||
;------[ „…˜ˆ”<CB86>€–ˆŸ ŠŽŒ€<C592>„<EFBFBD>މ ‘’<E28098>ŽŠˆ,<2C>…<EFBFBD>…„€<E2809E><E282AC>މ „‹Ÿ "EXPANSION" ]-------;
|
||
COMAND_LINE:
|
||
LD HL,(#5C5D) ;!HARDCODE CH_ADR
|
||
COMAND_LOOP:
|
||
LD A,(HL)
|
||
INC HL
|
||
CP ":"
|
||
JR Z,COMAND_L1
|
||
CP #0D
|
||
JR NZ,COMAND_LOOP
|
||
RET
|
||
|
||
COMAND_L1:
|
||
LD A,(HL)
|
||
CP #EA ;!HARDCODE
|
||
RET NZ
|
||
INC HL
|
||
COMAND_OK: ; Ž<><C5BD>€<EFBFBD>“†…<E280A0>€ ŠŽŒ€<C592>„€ „‹Ÿ 'expansion'
|
||
LD A,(HL)
|
||
INC HL
|
||
CP ':'
|
||
JP Z,MENU_S1
|
||
CP #0D
|
||
JP Z,MENU_S1
|
||
CP 'I'
|
||
JR Z,COMAND_ISD
|
||
CP 'i'
|
||
JR Z,COMAND_ISD
|
||
CP 'T'
|
||
JR Z,TASK_SWITCH
|
||
CP 't'
|
||
JR Z,TASK_SWITCH
|
||
DEC HL
|
||
POP BC
|
||
JP BASIC_MENU
|
||
MENU_S1:
|
||
POP BC
|
||
CALL SERVICE
|
||
JP SW_ROM_1
|
||
|
||
COMAND_ISD:
|
||
LD A,(HL)
|
||
INC HL
|
||
CP 'S'
|
||
JP Z,COMAND_ISD2
|
||
CP 's'
|
||
JP Z,COMAND_ISD2
|
||
RET
|
||
|
||
COMAND_ISD2:
|
||
POP BC
|
||
CALL ISDOS
|
||
JP SW_ROM_1
|
||
|
||
|
||
TASK_SWITCH:
|
||
; *** ‘®åà ¨âì § ¤ çã ***
|
||
PUSH IY
|
||
PUSH IX
|
||
PUSH AF
|
||
PUSH BC
|
||
PUSH DE
|
||
PUSH HL
|
||
|
||
EXX
|
||
EX AF,AF'
|
||
|
||
PUSH AF
|
||
PUSH BC
|
||
PUSH DE
|
||
PUSH HL
|
||
|
||
LD A,R
|
||
PUSH AF
|
||
LD A,I
|
||
PUSH AF
|
||
|
||
LD A,(HL)
|
||
RLCA
|
||
RLCA
|
||
RLCA
|
||
RLCA
|
||
AND 30H ; ®¢ ï § ¤ ç 0..3
|
||
LD C,A
|
||
|
||
IN A,(SLOT3)
|
||
LD B,A ; 3-ï áâà ¨æ ⥪ã饩 § ¤ ç¨
|
||
LD A,SYS_PAGE
|
||
OUT (SLOT3),A
|
||
|
||
LD IX,SYS_PAGE.TASK_DATA ; ¤ ë¥ § ¤ ç
|
||
LD E,(IX) ; áâ à ï § ¤ ç
|
||
LD D,0
|
||
ADD IX,DE ; ¤ ë¥ â¥ªã饩 § ¤ ç¨
|
||
LD E,16
|
||
ADD IX,DE ; ᬥ饨¥ ¤ ëå ¢ â ¡«¨æ¥ § ¤ ç
|
||
|
||
LD (IX+1),B ; á®åà ¨âì áâà ¨æã 3
|
||
LD HL,0
|
||
ADD HL,SP
|
||
LD (IX+2),L ; á®åà ¨âì á⥪ § ¤ ç¨
|
||
LD (IX+3),H
|
||
SET 0,(IX) ; ãáâ ®¢¨âì ä« £ á®åà ¥®á⨠⥪ã饩 § ¤ ç¨
|
||
RES 1,(IX) ; ãáâ ®¢¨âì ä« £, çâ® § ¤ ç ¯®ª¨ãâ
|
||
|
||
LD IX,SYS_PAGE.TASK_DATA
|
||
LD E,C
|
||
LD D,0
|
||
ADD IX,DE ; ®¢ ï § ¤ ç
|
||
LD E,16
|
||
ADD IX,DE ; ᬥ饨¥ ¤ ëå ¢ â ¡«¨æ¥ § ¤ ç
|
||
|
||
BIT 1,(IX)
|
||
; JR NZ,TASK_IN_WORK ; § ¤ ç ¢ à ¡®â¥ ??? ¥¢¥à®¥ § ¢¥à襨¥
|
||
; á¡à áë¢ âì ¨«¨ ¯à®áâ® ¢®§¢à é âìáï
|
||
|
||
BIT 0,(IX) ; ¡ë« á®åà ¥ /¥â
|
||
JR NZ,TASK_SET ; § ¤ ç áãé¥áâ¢ã¥â
|
||
|
||
; § ¤ ç¨ ¥ ¡ë«®!
|
||
LD IX,SYS_PAGE.TASK_DATA
|
||
LD A,C ; § ¤ ç
|
||
LD (IX),A ; ãáâ ®¢¨âì ®¢ãî § ¤ çã ⥪ã饩
|
||
|
||
JP SPECTRUM_TASK ; § ¯ãáâ¨âì ®¢ãî § ¤ çã!
|
||
; ¨ ¯®ª ¯®ä¨£ à á¯à¥¤¥«¥¨¥ ¯ ¬ïâ¨!
|
||
|
||
TASK_SET:
|
||
LD IX,TASK_RESTORE
|
||
LD A,C
|
||
EXX
|
||
JP INIT_PAGES ; ¯¥à¥ª«îç¨âì ¢á¥ áâà ¨æë!
|
||
|
||
TASK_RESTORE:
|
||
EXX
|
||
LD A,SYS_PAGE
|
||
OUT (SLOT3),A
|
||
LD A,C
|
||
LD IX,SYS_PAGE.TASK_DATA
|
||
LD (IX),A ; ãáâ ®¢¨âì ®¢ãî § ¤ çã ⥪ã饩
|
||
|
||
LD E,A
|
||
LD D,0
|
||
ADD IX,DE ; ®¢ ï § ¤ ç
|
||
LD E,16
|
||
ADD IX,DE
|
||
|
||
LD L,(IX+2) ; ¢á¯®¬¨âì á⥪
|
||
LD H,(IX+3)
|
||
LD SP,HL
|
||
LD A,(IX+1) ; ¢á¯®¬¨âì âà¥âìî áâà ¨æã
|
||
OUT (SLOT3),A
|
||
|
||
|
||
POP AF ; ¢®ááâ ®¢¨âì
|
||
LD I,A
|
||
POP AF
|
||
LD R,A
|
||
POP HL
|
||
POP DE
|
||
POP BC
|
||
POP AF
|
||
EX AF,AF'
|
||
EXX
|
||
POP HL
|
||
POP DE
|
||
POP BC
|
||
POP AF
|
||
POP IX
|
||
POP IY
|
||
; ¢¥àãâìáï ¢ § ¤ çã
|
||
|
||
NO_TASK:
|
||
POP BC
|
||
JP SW_ROM_1
|
||
|
||
; 259F - ADRESS BASIC128 - MAIN_MENU
|
||
;-----------------------------------------------------------------------;
|
||
|
||
|
||
|
||
;-----------------------------------------------------------------------;
|
||
; *** UTILITES ***
|
||
;-----------------------------------------------------------------------;
|
||
|
||
; C_0030: ; ¯®«ãç¨âì à ¡ ®¡«
|
||
; CALL_48X 0030h
|
||
; RET
|
||
C_19E8: ; ®ç¨áâ¨âì à ¡ ®¡«
|
||
CALL_48X #19E8 ;!HARDCODE
|
||
RET
|
||
C_1655: ; ¯®«ãç¨âì ¯à®áâà á⢮
|
||
CALL_48X #1655 ;!HARDCODE
|
||
RET
|
||
CLS:
|
||
C_0D6B: CALL_48 #0D6B ;!HARDCODE
|
||
RET
|
||
CH_2: LD A,2
|
||
C_1601: ; OPEN CHANEL
|
||
CALL_48 #1601 ;!HARDCODE
|
||
RET
|
||
|
||
INCLUDE '../exp/ZX_MENU.ASM'
|
||
INCLUDE '../exp/ZX_MODE.ASM'
|
||
ENDIF
|
||
;-----------------------------------------------------------------------;
|
||
; _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ _ZX_ ;
|
||
;
|
||
|
||
|
||
|
||
|
||
;-------------[#1000 SETUP]-------------
|
||
ShowInfo 'Setup block of ROM start', 0 ; !!!!! test
|
||
|
||
BLOCK_Setup EQU $
|
||
;
|
||
IF PACKED_MAIN
|
||
BLOCK ROM_MAP.SETUP-$,#FF
|
||
|
||
DISP COMPILE_ADDR.SETUP
|
||
|
||
; Depacker version
|
||
SETUP_MAIN:
|
||
LD HL,DEPACKER.UnpackedEXECaddr; â®çª ¢å®¤ ¢ à ᯠª®¢ ®¬ ª®¤¥
|
||
PUSH HL
|
||
LD DE,DEPACKER.WorkAddr ; ¤à¥á ¯à®æ¥¤ãàë ¤¥¯ ª¥à
|
||
PUSH DE
|
||
|
||
LD HL,DEPACKER.Addr
|
||
LD BC,DEPACKER.Length
|
||
LDIR
|
||
|
||
LD HL,DEPACKER.PackedMAIN ; £¤¥ à娢
|
||
LD DE,DEPACKER.UnpackAddr ; ªã¤ à ᯠª®¢ë¢ âì
|
||
RET
|
||
|
||
.Depacker EQU $
|
||
ENT
|
||
|
||
;-----------------[v]
|
||
DEPACK_DATA:
|
||
DISP DEPACKER.WorkAddr
|
||
MODULE UnPacker
|
||
INCLUDE 'src/bios/ROM/SETUP/DEHRUST.asm' ; !TODO ᤥ« âì LUA ¢â®¢ë¡®à ¤¥ª®¬¯à¥áá®à ¨ ª®¬¯à¥áá®à
|
||
PackedMAIN: INCBIN 'Build/Bin/temp/MAIN.PAK'
|
||
ENDMODULE
|
||
ENT
|
||
DEPACK_DATA.length EQU $-DEPACK_DATA
|
||
;-----------------[^]
|
||
|
||
|
||
ELSE
|
||
DISP COMPILE_ADDR.SETUP
|
||
ShowInfo 'Setup block DISP start', 1 ; !!!!! test
|
||
SETUP_MAIN: INCLUDE 'src/bios/ROM/SETUP/Main.asm'
|
||
ShowInfo 'Setup block DISP end', 1 ; !!!!! test
|
||
ENT
|
||
ENDIF
|
||
|
||
|
||
ShowInfo 'Setup block of ROM end', 0 ; !!!!! test
|
||
BLOCK_Setup.Length EQU $-BLOCK_Setup
|
||
;---------------------------------------
|
||
;
|
||
|
||
|
||
|
||
|
||
|
||
;
|
||
; !FIXIT ᤥ« âì í⨠䨪á¨à®¢ ë¥ ¤à¥á ®â¤¥«ìë¬ ä ©«®¬ ¨ á IF/ELSE ¨ ¯®¤ª«îç âì ¨å ¯®â®¬ ªã¤ ¤®.
|
||
;
|
||
;????? ¯®á¬®âà¥âì
|
||
;----------------------------------------------------------------------;
|
||
; BLOCK #3CC0-$,255
|
||
; no-magics!
|
||
;MAGIC_1: ; ‡€ƒ‹“˜Š€ „‹Ÿ MAGIC
|
||
; PUSH AF
|
||
; LD A,ROM.EXT
|
||
; OUT (SYS_PORT.OFF),A
|
||
; POP AF
|
||
; JP MAGIC_1
|
||
;MAGIC_3:
|
||
; PUSH AF
|
||
; LD A,ROM.EXT
|
||
; OUT (SYS_PORT.OFF),A
|
||
; POP AF
|
||
; RETN
|
||
;MAGIC_2:
|
||
;; CALL MG_BEGIN
|
||
; JR MAGIC_3
|
||
|
||
;*************************
|
||
_mInfoBLOCK #3CE0-$,0
|
||
;SW_ROM_1:
|
||
LD HL,#259F ;!HARDCODE Show Main Menu in BASIC-128
|
||
PUSH HL
|
||
LD HL,#5B00 ;!HARDCODE
|
||
LD A,(HL)
|
||
CP #F5 ; #F5 - ®¯ª®¤ 'PUSH AF'. <20>஢¥àï¥âáï â® «¨ ¢ #5B00
|
||
JR Z,JP_HL_48 ; ‚އ‚<E280A1>€’ Š Œ…<C592>ž BASIC128
|
||
POP HL
|
||
JR SW_ROM ; <20><>Ž‘’މ ‚އ‚<E280A1>€’
|
||
;*************************
|
||
|
||
_mInfoBLOCK #3CF0-$,0
|
||
IF BIOS_ZXMODE
|
||
/*
|
||
;BEGIN:
|
||
; ‚室 ç¥à¥§ USR 15600
|
||
RET_FROM_BIOS_TO_BASIC48:
|
||
CALL CH_2
|
||
CALL COMAND_LINE ; ‚›<E2809A>Ž‹<C5BD>…<EFBFBD>ˆ… ŠŽŒ€<C592>„›, …‘‹ˆ …‘’œ
|
||
; ‚室 ¡¥§ ª®¬ ¤ë
|
||
JR SW_ROM_1 ; ‚އ‚<E280A1>€’ ‚ << MAIN MENU >>
|
||
*/
|
||
ENDIF
|
||
;JMP_48:
|
||
; LD HL,00h
|
||
; JR JP_HL_48
|
||
;
|
||
; NOP
|
||
; NOP
|
||
; NOP
|
||
|
||
;***************************************
|
||
_mInfoBLOCK #3CF8-$,0
|
||
; no basic-48!
|
||
JP_HL_48:
|
||
PUSH HL
|
||
SW_ROM:
|
||
PUSH AF
|
||
LD A,ROM.BIOS
|
||
OUT (SYS_PORT.RAM),A
|
||
POP AF
|
||
RET
|
||
;***************************************
|
||
;----------------------------------------------------------------------;
|
||
;
|
||
|
||
;!TODO ᯥªâà㬮¢áª¨¥ ã⨫¨âë
|
||
;----------------------------------------------------------------------;
|
||
; _mInfoBLOCK #3CFA-$,#FF
|
||
; LD A,0 ;!HARDCODE
|
||
; OUT (SYS_PORT.OFF),A
|
||
; POP AF
|
||
;----------------------------------------------------------------------;
|
||
;
|
||
|
||
|
||
;
|
||
;----------------------------------------------------------------------;
|
||
_mInfoBLOCK #3D00-$,#FF
|
||
;DOS_ON:
|
||
NOP
|
||
RET
|
||
;***************************************
|
||
|
||
;***************************************
|
||
; BLOCK #3D02-$,FF
|
||
; !TODO ¬®¦® ®¯à¨å®¤®¢ âì âãâ 17 ¡ ©â®¢
|
||
;
|
||
;***************************************
|
||
|
||
;***************************************
|
||
_mInfoBLOCK #3D13-$,#FF
|
||
NOP
|
||
JP ToBIOS_18
|
||
;***************************************
|
||
|
||
;***************************************
|
||
; BLOCK #3D17-$,FF
|
||
; !TODO ¬®¦® ®¯à¨å®¤®¢ âì âãâ 233 ¡ ©â
|
||
;
|
||
;***************************************
|
||
|
||
;***************************************
|
||
_mInfoBLOCK #3E00-$,#FF
|
||
;DOS_OFF:
|
||
DI
|
||
PUSH AF
|
||
PUSH BC
|
||
LD BC,(#5BFF) ; !HARDCODE
|
||
LD A,#C9
|
||
LD (#5BFF),A ; !HARDCODE
|
||
CALL #5BFF ; !HARDCODE
|
||
LD (#5BFF),BC ; !HARDCODE
|
||
POP BC
|
||
POP AF
|
||
RET
|
||
;***************************************
|
||
|
||
|
||
;***************************************
|
||
; BLOCK #3E16-$,FF
|
||
; !TODO ¬®¦® ®¯à¨å®¤®¢ âì âãâ 10 ¡ ©â®¢
|
||
;
|
||
;***************************************
|
||
;
|
||
|
||
|
||
|
||
;
|
||
;***************************************
|
||
; _mInfoBLOCK #3FC6-$,#FF
|
||
;!FIXIT ¯¥à¥¤¥« âì <20>‡“ âà¤®á ¨ ᯥªâà㬮¢ ¯®¤ ¯à ¢¨«ìë© ¢ë§®¢ äãªæ¨© ¡¨®á ( ¥ ¢¬¥áâ® äãªæ¨© 4x äãªæ¨¨ 0x)
|
||
; ¨«¨ ¬®¦® ¤®¡ ¢¨âì äãªæ¨¨
|
||
; TRDOS_HD_CMD:
|
||
; ; LD A,C
|
||
; ; OR #40
|
||
; ; LD C,A
|
||
; POP AF
|
||
; SET 6,C
|
||
; RST_to_BIOS
|
||
; JR RET_TO_TRDOS
|
||
;***************************************
|
||
;
|
||
;---------------[SET BIOS]---------------
|
||
_mInfoBLOCK ToBIOS_FromEXT-$,#FF ; #3FD0
|
||
; call BIOS from EXTENSION
|
||
;RST18h:
|
||
PUSH AF
|
||
LD A,ROM.BIOS ; set exp-rom to slot0
|
||
OUT (SYS_PORT.ROM),A
|
||
POP AF
|
||
RET
|
||
;---------------------------------------
|
||
|
||
|
||
|
||
;--------[ From TR-DOS to HDD part2]--------
|
||
_mInfoBLOCK #3FD8-$,#FF
|
||
TRDOS_HD_CMD:
|
||
POP AF
|
||
SET 6,C ;!FIXIT ¯¥à¥¤¥« âì <20>‡“ âà¤®á ¨ ᯥªâà㬮¢ ¯®¤ ¯à ¢¨«ìë© ¢ë§®¢ äãªæ¨© ¡¨®á ( ¥ ¢¬¥áâ® äãªæ¨© 4x äãªæ¨¨ 0x)
|
||
RST_to_BIOS
|
||
JR RET_TO_TRDOS
|
||
;---------------------------------------
|
||
|
||
|
||
;!FIXIT ®áâ ⪨ ®â ᯥªâàã¬
|
||
;-------------[SND_TEST_RET]-------------
|
||
_mInfoBLOCK #3FE0-$,#FF
|
||
SND_TEST_RET:
|
||
LD A,ROM.BIOS
|
||
OUT (SYS_PORT.RAM),A
|
||
; JP SOUND_TEST
|
||
JP #0000
|
||
;---------------------------------------
|
||
|
||
|
||
;------------[HDD_5x portal]------------
|
||
; â®çª ¢å®¤ /¢ë室 ¤«ï äãªæ¨© 5å ¨§ BIOS
|
||
_mInfoBLOCK #3FE8-$,#FF
|
||
;RET_TO_EXP:
|
||
; PUSH AF
|
||
; LD A,ROM.BIOS
|
||
; OUT (SYS_PORT.ROM),A
|
||
; JP HDD_FN_5x
|
||
;---------------------------------------
|
||
|
||
|
||
;!FIXIT íâ â®çª ¢å®¤ ®ç¥ì áâà ï ¨§ áâà ¨æë ¢ áâà ¨æã ¯àë£ ¥â
|
||
;---------[ From TR-DOS to HDD ]--------
|
||
_mInfoBLOCK #3FF0-$,255
|
||
RET_TO_TRDOS:
|
||
PUSH AF
|
||
DI
|
||
LD A,ROM.BIOS
|
||
OUT (SYS_PORT.RAM),A
|
||
JR TRDOS_HD_CMD ; âãâ ¥ å¢ â¨«® ¬¥áâ ¢ 1 ¡ ©â, ç⮡ áà §ã ᤥ« âì JP
|
||
;---------------------------------------
|
||
|
||
|
||
|
||
;-----[???????????????????????????]-----
|
||
_mInfoBLOCK #3FF8-$,255
|
||
A3FF8: PUSH AF
|
||
LD A,ROM.BIOS
|
||
OUT (SYS_PORT.RAM),A
|
||
; !FIXIT ¬®¦¥â ã¡à âì § £«ãèªã ¨ ᤥ« âì, ç⮡ ¯¥à¥ª«îç «®áì BIOS ¨ ¤ «ìè¥ ª ª ¢ EXP_FNS_RET ?
|
||
; ¨«¨ ᢮¥£® 祣®-¨¡ã¤ì ¤®¡ ¢¨âì.
|
||
JP #0000
|
||
;---------------------------------------
|
||
_mInfoBLOCK #4000-$,255
|
||
;=======================================
|