мелкие правки с инитом vROM

This commit is contained in:
Anatoliy Belyanskiy 2024-02-24 23:31:24 +10:00
parent 8816322b85
commit a4a69a2604
4 changed files with 148 additions and 172 deletions

View File

@ -16,7 +16,7 @@ EXP_START:
;--------------------------------------- ;---------------------------------------
ROM_NUMBER: ROM_NUMBER:
.part1: DW MotherBoardID ; MotherBoardID .part1: DW MotherBoardID
.part2: DB 0 .part2: DB 0
;--------------------------------------- ;---------------------------------------
@ -145,7 +145,7 @@ TABLE_X:
; ;
;======================================= ;=======================================
IFN TEST_INT IFN TEST_INT
RESTARTS EQU #FFE0 ; !FIXIT ¢ë­¥á⨠¢ SP2000.inc RESTARTS EQU #FFE0
GLOBAL_RESET: GLOBAL_RESET:
DI DI
IM 1 IM 1
@ -210,12 +210,11 @@ NMI_Point:
;======================================= ;=======================================
; BLOCK MEM_MAP.ID_Version-$,0 ;#C0-$,0 ; BLOCK MEM_MAP.ID_Version-$,0 ;#C0-$,0
ID_Version: ID_Version: DW BIOS_ver_hex
dw BIOS_ver_hex
ID_SPRINTER_length: ID_SPRINTER_length:
DB ID_SPRINTER.LENGTH DB ID_SPRINTER.LENGTH
ID_SPRINTER: ; § ¯¨áì 1 ; § ¯¨áì 1
DB 'Firmware v' ID_SPRINTER: DB 'Firmware v'
.BIOS_ver: DB BIOS_ver_string,', ' .BIOS_ver: DB BIOS_ver_string,', '
IF DEBUG IF DEBUG
DB 'BETA release' DB 'BETA release'
@ -233,7 +232,7 @@ ID_SPRINTER: ;
.LENGTH EQU $-ID_SPRINTER .LENGTH EQU $-ID_SPRINTER
; Check for max length of string ; Check for max length of string
ASSERT ID_SPRINTER.LENGTH < #40, 'ERROR! ID String is to long!' ASSERT ID_SPRINTER.LENGTH < #FF, 'ERROR! ID String is to long!'
;======================================= ;=======================================
@ -275,7 +274,9 @@ TABLE_X: ; ⠡
; ;
;======================================= ;=======================================
IF TEST_INT IF TEST_INT
RESTARTS EQU #FFE0 ; !FIXIT ¢ë­¥á⨠¢ SP2000.inc RESTARTS EQU #FFE0
; ¯®«­ë© ¯¥à¥å¢ â à¥á¥â  áà §ã ¯®á«¥ ¯à®«¨¢ª¨ ª®­äë ¨ CAD.
; § ª¨¤ë¢ ¥âáï ¢ ª àâã ¯®à⮢, ¯®í⮬㠨ᯮ«ì§®¢ âì ­ ¤® å¨âà®.
GLOBAL_RESET: GLOBAL_RESET:
DI DI
IM 1 IM 1
@ -714,7 +715,7 @@ POST_5_OK:
ADD IX,SP ; ¢®ááâ ­®¢¨âì §­ ç¥­¨¥ ¯¥à¥¤ ­­®¥ § £àã§ç¨ª®¬ ª®­äë (¥á«¨ áâ àâ ¯®á«¥ à¥á¥â ) ADD IX,SP ; ¢®ááâ ­®¢¨âì §­ ç¥­¨¥ ¯¥à¥¤ ­­®¥ § £àã§ç¨ª®¬ ª®­äë (¥á«¨ áâ àâ ¯®á«¥ à¥á¥â )
; í⮬ ¬¥á⥠㠭 á IX:IY ¨§ Loader.asm ; í⮬ ¬¥á⥠㠭 á IX:IY ¨§ Loader.asm
; „®â é¨«¨ ¤® á ¬¥âªã ®â «® ¤¥à , ¯®ª  ­¥ ¨á¯®«ì§ã¥âáï ; „®â é¨«¨ ¤® á ¬¥âªã ®â «® ¤¥à , ¯®ª  ­¥ ¨á¯®«ì§ã¥âáï
;!TEST 31/12/23 ¯®¤áâà å®¢ª  ®â ãâ¥çª¨ ¯ ¬ï⨠;[x] 31/12/23 ¯®¤áâà å®¢ª  ®â ãâ¥çª¨ ¯ ¬ïâ¨
LD D,YH LD D,YH
LD E,YL LD E,YL
EX DE,HL EX DE,HL
@ -899,25 +900,28 @@ init_rom_address EQU #8200 ;!HARDCO
LD A,'Z' LD A,'Z'
LD (DE),A LD (DE),A
;!FIXIT ᤥ« âì ¢ë¡®à £à㧨âì ¤ /­¥â <20>‡“ ᯥªâà㬠 ¯à¨ áâ àâ¥, [-------] ; ‡ £«ã誠 ¤«ï áâà ­¨æë #41 ­  ¢á直© ¯®¦ à­ë©
; ¥á«¨ ­¥â - â® ¢®âª­ãâì íâ®â ª®¤: LD HL,PROG_NO_ROM
; LD HL,PROG_NO_ROM LD DE,#C000 + Spec_Page.no_zx_rom
; LD DE,#C000 + Spec_Page.no_zx_rom LD BC,PROG_NO_ROM.size
; LD BC,PROG_NO_ROM.size LDIR
; LDIR ;
LD HL,RAM_BIOS_PROG
; LD HL,RAM_BIOS_PROG LD DE,#C000 + Spec_Page.to_bios
; LD DE,#C000 + Spec_Page.to_bios LD BC,RAM_BIOS_PROG.Length
; LD BC,RAM_BIOS_PROG.Length LDIR
; LDIR
;---------------------------------------
;---------------------------------------
No_Need_To_Load_ZXROMS: No_Need_To_Load_ZXROMS:
POP AF POP AF
OUT (SLOT3),A OUT (SLOT3),A
; ;
;-------------------------------------------------------------------------------------------------------------------;
;!TODO ᤥ« âì ¢ë¡®à ¢ Setup, çâ® £à㧨âì ¢ v<>‡“ ¯à¨ áâ àâ¥. ‚ à¨ ­âë:
; 1 - ƒà㧨â <20>‡“ ᯥªâà㬠 ¨§ ROM ¯à¨ áâ à⥠¥á«¨ ­¥â ä« £  ZX
; 2 - ƒà㧨â <20>‡“ ᯥªâà㬠 ¨§ ROM ¯à¨ ª ¦¤®¬ ¯¥à¥§ ¯ã᪥ (¬®¦¥â ¡ëâì ®¯ á­®)
; 3 - <20>¥ £à㧨âì <20>‡“ ᯥªâà㬠, ¨­¨â¨âì áâà ­¨æã #41 ª ª ¢ 3.04
; 4 - <20>¥ £à㧨âì <20>‡“ ᯥªâà㬠, ¨­¨â¨âì áâà ­¨æã #41 â ª, ç⮡ ª®¤ ¢ ­¥© ¯®¤£à㦠« <20>‡“ ᯥªâà㬠 ¯à¨ ®¡à é¥­¨¨
;-------------------------------------------------------------------------------------------------------------------;
ENDMODULE ENDMODULE
;[---------------------------------------------------------------------]
; ;
;************************************** ;**************************************
; ;
@ -1144,7 +1148,6 @@ init_zx_roms:
DISP Reset_Handler.init_rom_address DISP Reset_Handler.init_rom_address
IN A,(SLOT3) IN A,(SLOT3)
;PUSH AF
EX AF,AF' EX AF,AF'
DI DI
@ -1152,10 +1155,8 @@ init_zx_roms:
OUT (SYS_PORT.ROM),A OUT (SYS_PORT.ROM),A
INC A ;!HARDCODE LD A,2 INC A ;!HARDCODE LD A,2
LD B,3 ; zx-rom number of pages LD B,3 ; zx-rom number of pages
;
;!FIXIT ¯¥à¥¤¥« âì ­  äã­ªæ¨î ¡¨®á  ¤«ï ç⥭¨ï ROM-DISK ¨ ¯¥à¥­¥á⨠¢ ­¥£® <20>‡“ ᯥªâà㬠 .loop: EXX
.loop: ;push bc
EXX
; ;
out (ROM.SLOT0),a out (ROM.SLOT0),a
or %0100'0000 ; !HARDCODE ­®¬¥à  áâà ­¨æ ¤«ï í¬ã«ïâ®à  <20>‡“ or %0100'0000 ; !HARDCODE ­®¬¥à  áâà ­¨æ ¤«ï í¬ã«ïâ®à  <20>‡“
@ -1167,68 +1168,49 @@ init_zx_roms:
LD BC,#4000 LD BC,#4000
LDIR LDIR
inc a INC A
;pop bc
EXX EXX
DJNZ .loop DJNZ .loop
xor a xor a
out (ROM.SLOT0),a out (ROM.SLOT0),a
OUT (SYS_PORT.ROM),A OUT (SYS_PORT.ROM),A
;POP AF
EX AF,AF' EX AF,AF'
out (SLOT3),a out (SLOT3),a
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
LD A,ACEX.vROM.BASIC_128 ; ROM-ID - BASIC 128 LD A,ACEX.vROM.BASIC_128 ; ROM-ID - BASIC 128
LD B,#42 ;!HARDCODE page LD B,#42 ;!HARDCODE page
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
;CALL .SET_ROM
CALL SET_PORTS CALL SET_PORTS
; ;
LD A,ACEX.vROM.BASIC_48 ; ROM-ID - BASIC 48 LD A,ACEX.vROM.BASIC_48 ; ROM-ID - BASIC 48
LD B,#43 ;!HARDCODE page LD B,#43 ;!HARDCODE page
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
;CALL .SET_ROM
CALL SET_PORTS CALL SET_PORTS
; ;
LD A,ACEX.vROM.TR_DOS ; ROM-ID - TR-DOS LD A,ACEX.vROM.TR_DOS ; ROM-ID - TR-DOS
LD B,#44 ;!HARDCODE page LD B,#44 ;!HARDCODE page
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
;CALL .SET_ROM
CALL SET_PORTS CALL SET_PORTS
; ;
; LD A,ACEX.vROM.BIOS ; ROM-ID - BIOS ; í⨠áâà ­¨æë ¯®ª  ­¥ ¨á¯®«ì§ãîâáï
LD A,ACEX.vROM.BIOS ; ROM-ID - BIOS
;LD B,#45 ;!HARDCODE page ;LD B,#45 ;!HARDCODE page
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23 LD B,#41
;CALL .SET_ROM
CALL SET_PORTS CALL SET_PORTS
; ;
LD A,ACEX.vROM.BIOS_3 ; ROM-ID - BIOS-1
;LD B,#46 ;!HARDCODE page
; LD A,ACEX.vROM.BIOS_3 ; ROM-ID - BIOS-1 LD B,#41
; LD B,#45 ;!HARDCODE page
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
;CALL .SET_ROM
CALL SET_PORTS CALL SET_PORTS
; ;
LD A,ACEX.vROM.BIOS_4 ; ROM-ID - BIOS-2
; LD A,ACEX.vROM.BIOS_4 ; ROM-ID - BIOS-2
;LD B,#47 ;!HARDCODE page ;LD B,#47 ;!HARDCODE page
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23 LD B,#41
;CALL .SET_ROM JP SET_PORTS
CALL SET_PORTS ; ¬®¦­® § ¤¥©á⢮¢ âì ¥éñ 4 áâà ­¨æë ­  ¯®àâë #E4..#E7
;
RET
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
;.SET_ROM:
;LD C,BIOS.SET_PORTS
;JP ToBIOS_3D13
;
ENT ENT
.length EQU $-init_zx_roms .length EQU $-init_zx_roms
;-----------------------------------------------------------------------; ;-----------------------------------------------------------------------;
@ -1236,7 +1218,8 @@ init_zx_roms:
;-----------------------------------------------------------------------; ;-----------------------------------------------------------------------;
GOTO_SPEC: ; ????? ¯à®æ¥¤ãà  ¡¨®á  ¤«ï § å®¤  ¢ ०¨¬ ᯥªâà㬠 ;!TODO § ¤¥©á⢮¢ âì
GOTO_SPEC:
IN A,(SLOT3) IN A,(SLOT3)
EX AF,AF' EX AF,AF'
LD A,SYS_PAGE LD A,SYS_PAGE
@ -1263,23 +1246,16 @@ ZX_SPECTRUM_MODE:
CALL SET_PAL_ZX CALL SET_PAL_ZX
LD E,0 LD E,0
;!TEST
; LD HL,#4104
; LD B,4
; CALL LP_OPEN_S
CALL LP_SET_32 CALL LP_SET_32
; ;
LD E,0 LD E,0
LD HL,#5104 LD HL,#5104
;!TEST
; LD B,4
;CALL LP_OPEN_S
CALL LP_SET_32.X CALL LP_SET_32.X
; ????? ¬®¦­® ¨á¯®«ì§®¢ âì ª®£¤ -­¨¡ã¤ì ª ª-­¨¡ã¤ì
; LD D,#35 ; LD D,#35
; CALL CMOS_RD ; CALL CMOS_RD
; BIT 0,A ; !!!!! ; BIT 0,A
; PUSH AF ; PUSH AF
; CALL Z,SPRINTER_1 ; CALL Z,SPRINTER_1
; POP AF ; POP AF
@ -1443,63 +1419,62 @@ Length EQU $-Setup_Starter.Start
;---------------------[ ‡€ƒ‹“˜Šˆ „‹Ÿ #41 <E28098><EFBFBD>ˆ]----------------------; ;---------------------[ ‡€ƒ‹“˜Šˆ „‹Ÿ #41 <E28098><EFBFBD>ˆ]----------------------;
;-------------[RST 08] ;-------------[RST 08]
; RAM_BIOS_PROG: ; for CALL BIOS in #41 page RAM_BIOS_PROG: ; for CALL BIOS in #41 page
; DISP Spec_Page.to_bios DISP Spec_Page.to_bios
; PUSH AF PUSH AF
; LD A,ROM.BIOS LD A,ROM.BIOS
; OUT (SYS_PORT.ROM),A OUT (SYS_PORT.ROM),A
; POP AF POP AF
; RET RET
; ENT ENT
; .Length EQU $-RAM_BIOS_PROG .Length EQU $-RAM_BIOS_PROG
; ;-------------------[] ;-------------------[]
;
; ;-------------[RST 38] ;-------------[RST 38]
; PROG_NO_ROM: PROG_NO_ROM:
; DISP Spec_Page.no_zx_rom DISP Spec_Page.no_zx_rom
; DI DI
;
; LD A,#FF LD A,#FF
; OUT (SLOT3),A OUT (SLOT3),A
; OUT (SLOT2),A OUT (SLOT2),A
; OUT (SLOT1),A OUT (SLOT1),A
;
; LD SP,#BF00 LD SP,#BF00
;
; LD C,BIOS.LP_OPEN_S LD E,0
; LD B,3 LD BC,BIOS.LP_OPEN_S.TXT_80x32_Default
; LD E,0 RST ToBIOS
; RST ToBIOS ;
LD DE,0
; LD C,BIOS.LP_CLS_WIN LD HL,#2050
; LD DE,0 LD C,BIOS.LP_CLS_WIN
; LD HL,#2050 RST ToBIOS
; RST ToBIOS ; set scr-2
LD A,1
; LD A,1 OUT (SCREEN_SWITCH),A
; OUT (RGMOD),A ; set scr-2 ;
LD HL,MESSAGE_NR
; LD HL,MESSAGE_NR LD DE,#A000
; LD DE,#A000 LD BC,MESSAGE_NR.size
; LD BC,MESSAGE_NR.size LD A,C
; LD A,C LDIR
; LDIR ;
LD HL,#A000
; LD HL,#A000 LD D,0 ; delimiter
; LD D,0 ; delimiter LD E,COLORS.CGA.FLASH + COLORS.CGA.INC.RED
; LD E,COLORS.CGA.FLASH + COLORS.CGA.INC.RED LD B,A
; LD B,A LD C,BIOS.LP_PRINT_LINE3
; LD C,BIOS.LP_PRINT_LINE3 RST ToBIOS
; RST ToBIOS ;
.loop: DI
; .loop: DI HALT
; HALT JR .loop
; JR .loop ;
MESSAGE_NR: DZ " Spectrum ROM not installed. Use spectrum.exe Press Ctrl+Alt+Del or RESET"
; MESSAGE_NR: DZ " Spectrum ROM not installed. Use spectrum.exe Press Ctrl+Alt+Del or RESET" .size EQU $-MESSAGE_NR
; .size EQU $-MESSAGE_NR ENT
; ENT PROG_NO_ROM.size EQU $-PROG_NO_ROM
; PROG_NO_ROM.size EQU $-PROG_NO_ROM
;-------------------[] ;-------------------[]
;-----------------------------------------------------------------------; ;-----------------------------------------------------------------------;
;>$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$<; ;>$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$<;

View File

@ -109,7 +109,8 @@ RST_CONF:
XOR A XOR A
RET RET
;
;[x]
.CHOOSE_CNF: .CHOOSE_CNF:
;!TEST ;!TEST
CP ACEX.Config_PG.Sp2000_SoftSetUp CP ACEX.Config_PG.Sp2000_SoftSetUp
@ -134,8 +135,9 @@ RST_CONF:
JR Z,.INT_PLD JR Z,.INT_PLD
SCF SCF
RET RET
;
.INIT_ACEX: ;!FIXIT ;!TODO <20>…„Ž„…<E280B9>Ž!!!! ;[x]
.INIT_ACEX:
DI DI
; ãáâ ­ ¢«¨¢ ¥¬ ­ã«¥¢ãî ª àâã ¯®à⮢ ; ãáâ ­ ¢«¨¢ ¥¬ ­ã«¥¢ãî ª àâã ¯®à⮢
LD A,CNF_PORT.CNF_0 LD A,CNF_PORT.CNF_0
@ -187,10 +189,11 @@ RST_CONF:
LD HL,RST_18_1.exit LD HL,RST_18_1.exit
XOR A XOR A
SBC HL,DE SBC HL,DE
JR NZ,1F ; NZ - ¥á«¨ ¢ë§®¢ ¡ë« ¯® RST #18 JR NZ,.set_ret ; NZ - ¥á«¨ ¢ë§®¢ ¡ë« ¯® RST #18
POP DE ; ¥á«¨ ¢ë§®¢ ¡ë« ¢ އ“ ¯® RST 8 POP DE ; ¥á«¨ ¢ë§®¢ ¡ë« ¢ އ“ ¯® RST 8
INC A INC A
1: LD (Spec_Page.RET_addr),DE .set_ret:
LD (Spec_Page.RET_addr),DE
; A=0 - SYS_PORT.ON ; A=0 - SYS_PORT.ON
; A=1 - SYS_PORT.OFF ; A=1 - SYS_PORT.OFF
LD (Spec_Page.Reload_Version),A LD (Spec_Page.Reload_Version),A
@ -238,7 +241,6 @@ RST_CONF:
RET RET
; ;
.INIT_ACEX.PROGRAM: .INIT_ACEX.PROGRAM:
DISPLAY " !!! !!! .INIT_ACEX.PROGRAM !!! !!!"
DISP Spec_Page.init_acex DISP Spec_Page.init_acex
; ;
SAFE_PORTY SAFE_PORTY
@ -256,9 +258,9 @@ RST_CONF:
OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 3 OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 3
; ;
LD HL,.INIT_ACEX.Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  LD HL,.INIT_ACEX.Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜- 
JR Z,1F ; ãáâ ­ ¢«¨¢ ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  JR Z,.skip ; ãáâ ­ ¢«¨¢ ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜- 
INC L ; § â¨à ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  INC L ; § â¨à ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜- 
1: LD DE,ACEX.LOADER.String_Address-#C000 .skip: LD DE,ACEX.LOADER.String_Address-#C000
LD BC,#10 LD BC,#10
LDIR LDIR

View File

@ -1,6 +1,6 @@
; ;
;---------[All shared defines]---------- ;---------[All shared defines]----------
DEFINE DEBUG 1 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥­¨¥ ® â¥á⮢®© ᡮથ ­  áâ à⮢®¬ íªà ­¥ DEFINE DEBUG 0 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥­¨¥ ® â¥á⮢®© ᡮથ ­  áâ à⮢®¬ íªà ­¥
DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®? DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
DEFINE SP2000_Loader_Flag #0107 DEFINE SP2000_Loader_Flag #0107
DEFINE IDE_Optimization 1 ; á«¥£ª  ®¯â¨¬¨§¨àã¥â ­¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD DEFINE IDE_Optimization 1 ; á«¥£ª  ®¯â¨¬¨§¨àã¥â ­¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD

View File

@ -1,13 +1,12 @@
TODO: TODO:
- ¯ã­ªâ ¢ á¥â ¯¥ "á®åà ­ïâì áâà ­¨æë ᯥªâà㬠 ¯à¨ ¯¥à¥§ £à㧪¥" - ¯ã­ªâ ¢ á¥â ¯¥ "á®åà ­ïâì áâà ­¨æë ᯥªâà㬠 ¯à¨ ¯¥à¥§ £à㧪¥"
- ¯¥à¥¤ ¨­¨æ¨ «¨§ æ¨¥© áâà ­¨æ ᯥªâà㬠 ¨ áâà ­¨æë 41 ¯à®¢¥àïâì, ­¥ § ­ïâë «¨ ®­¨ à ¬¤¨áª®¬ - ¯¥à¥¤ ¨­¨æ¨ «¨§ æ¨¥© áâà ­¨æ ᯥªâà㬠 ¨ áâà ­¨æë 41 ¯à®¢¥àïâì, ­¥ § ­ïâë «¨ ®­¨ à ¬¤¨áª®¬
- ‘¦ βμ εΰγα⮬ <20>‡“ α―¥<E28095>βΰγ¬  ¨ ‹®£®β¨―, ¥ιρ 1 αβΰ ­¨ζ  ¬®¦¥β ®αΆ®΅®¤¨βμαο
- Ά α¥β ― ¤«ο α®εΰ ­¥­¨ο ΰγη­λε ­ αβ஥<C2AE> HDD ­¥ β¥ ο祩<C2A5>¨ CMOS
- ç¨áâ¨âì ¡ãä¥à ª« ¢ë ­¥ ¢âã¯ãî,   ª ª¨¬¨-­¨¡ã¤ì ª®¬ ­¤ ¬¨ ¤«ï íâ¨å ¢á直å SIO/PIO, ¥á«¨ ¥áâì - ç¨áâ¨âì ¡ãä¥à ª« ¢ë ­¥ ¢âã¯ãî,   ª ª¨¬¨-­¨¡ã¤ì ª®¬ ­¤ ¬¨ ¤«ï íâ¨å ¢á直å SIO/PIO, ¥á«¨ ¥áâì
-+ ! ¢ Setup ¤®¡ ¢¨âì ¯ã­ªâ ­ áâனª¨ ¢à¥¬¥­¨ ¨ ¤ âë -+ ! ¢ Setup ¤®¡ ¢¨âì ¯ã­ªâ ­ áâனª¨ ¢à¥¬¥­¨ ¨ ¤ âë
-+ ­¥¬­®£® ¤®ΰ ΅®β ­  α¨α⥬  ―¥ΰ¥εΆ β  ΰ¥α¥β  ¤«ο γαβΰ ­¥­¨ο ­¥<C2AD>®β®ΰλε £«ξ<C2AB>®Ά ¨ ­  ΅γ¤γι¥¥
Done: Done:
+ ­¥¬­®£® ¤®à ¡®â ­  á¨á⥬  ¯¥à¥å¢ â  à¥á¥â  ¤«ï ãáâà ­¥­¨ï ­¥ª®â®àëå £«îª®¢ ¨ ­  ¡ã¤ã饥
+ ¢ á¥â ¯ à ¡®â ¥â á®åà ­¥­¨¥ ­ áâ஥ª HDD "Setup" ¯®á«¥ ¯¥à¢®£® 㤠筮£®  ¢â®¤¥â¥ªâ 
+ ‘¤¥« ­ ã­¨¢¥àá «ì­ë© § £àã§ç¨ª ¡¨âáâਬ  ¤«ï 1k30 ¨ 1k50 + ‘¤¥« ­ ã­¨¢¥àá «ì­ë© § £àã§ç¨ª ¡¨âáâਬ  ¤«ï 1k30 ¨ 1k50
+ €ªâ¨¢¨à®¢ ­ ¢â®à®© ª ­ « IDE + €ªâ¨¢¨à®¢ ­ ¢â®à®© ª ­ « IDE
+ <20>ã¬¥à æ¨ï ãáâனá⢠IDE ¯¥à¥¤¥« ­  á ¯®á«¥¤®¢ â¥«ì­®© ­  䨧¨ç¥áªãî + <20>ã¬¥à æ¨ï ãáâனá⢠IDE ¯¥à¥¤¥« ­  á ¯®á«¥¤®¢ â¥«ì­®© ­  䨧¨ç¥áªãî