mirror of
https://github.com/Tolik-Trek/DOOM2.git
synced 2026-06-15 00:51:33 +03:00
...
This commit is contained in:
parent
84f6958d37
commit
804a9c4909
146
D2_FRAM.asm
146
D2_FRAM.asm
@ -149,15 +149,15 @@ ANGLE_M+1:
|
||||
TRACE_NEXT_:
|
||||
;
|
||||
EXX
|
||||
LD HL,(PLACE_L) ; ⥪ã饥 ¯®«®¦¥¨¥ ¢ â ¡«¨æ¥
|
||||
LD HL,(PLACE_L) ; ⥪ã饥 ¯®«®¦¥¨¥ ¢ â ¡«¨æ¥
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
LD (PLACE_L1),A
|
||||
LD (PLACE_L2),A
|
||||
EXX
|
||||
;
|
||||
PLACE_L EQU $+1
|
||||
LD A,(TABLE_TRACE+10) ; ⮪®¥ ¯®«®¦¥¨¥ - ¯®«®¦¥¨¥ ¢ ª¢ ¤à â¥
|
||||
PLACE_L+1:
|
||||
LD A,(TABLE_TRACE+10) ; ⮪®¥ ¯®«®¦¥¨¥ - ¯®«®¦¥¨¥ ¢ ª¢ ¤à â¥
|
||||
;
|
||||
OUT (SLOT1),A
|
||||
LD (CONT_PAGE),A
|
||||
@ -173,7 +173,7 @@ TRACE_LOOP:
|
||||
LD E,(HL) ; ¯¥à¢ë© ¨ ¤ «¥¥ á«¥¤ãî騩 ªã¡¨ª
|
||||
LD A,(DE) ; ¥áâì ¨«¨ ¥â?
|
||||
AND A
|
||||
JR NZ,TRACE_CONT ; ¥á«¨ ¥áâì, à¨á®¢ âì!!
|
||||
JR NZ,TRACE_CONT ; ¥á«¨ ¥áâì, à¨á®¢ âì!!
|
||||
INC L
|
||||
ENDR
|
||||
|
||||
@ -204,8 +204,7 @@ TRACE_CONT:
|
||||
;
|
||||
EXX
|
||||
EX AF,AF' ;®¬¥à á⥪¨
|
||||
PLACE_L1 EQU $+1
|
||||
LD A,5
|
||||
PLACE_L1+1: LD A,5
|
||||
OUT (SLOT1),A ; á«¥¤ãî饥 ¯®«®¦¥¨¥ ¢ â ¡«¨æ¥
|
||||
|
||||
; LD C,0
|
||||
@ -232,9 +231,7 @@ PLACE_L1 EQU $+1
|
||||
LD A,(HL) ; ¢§ïâì ¥¬ áèâ ¡¨à®¢ ®!
|
||||
ACC_Off ; á⥪ ¢ އ“ ªá¥«¥à â®à !
|
||||
|
||||
LD A,5
|
||||
PLACE_L2 EQU $-1
|
||||
|
||||
PLACE_L2+1: LD A,5
|
||||
OUT (SLOT1),A ; á«¥¤ãî饥 ¯®«®¦¥¨¥
|
||||
EXX
|
||||
;
|
||||
@ -291,8 +288,7 @@ HIGH_1:
|
||||
; LD A,#06 ; 梥⠯®«
|
||||
; LD A,#5F ; 梥⠯®« á¥àë©
|
||||
; LD A,#CF ; 梥⠯®« ᨨ©
|
||||
LD A,#2F ; 梥⠯®« ⥬®ªà áë©
|
||||
COLOR_LO EQU $-1
|
||||
COLOR_LO+1: LD A,#2F ; 梥⠯®« ⥬®ªà áë©
|
||||
;
|
||||
ACC_FillScreenOneByte
|
||||
LD (DE),A ; à¨á®¢ âì ¯®«
|
||||
@ -314,7 +310,7 @@ COLOR_LO EQU $-1
|
||||
; NEG ; ¢ë¢®¤¨¬ë© à §¬¥à á⥪¨
|
||||
; á⥪ ¢ ªá¥«¥à â®à¥!
|
||||
ACC_SetBlockSize
|
||||
LD (DE),A
|
||||
LD (DE),A ;!!!!! ¯à¨ª®«ì®
|
||||
ACC_CopyScreenBlock
|
||||
LD (DE),A ; ¯®«®¦¨âì á⥪ã!
|
||||
ACC_Off
|
||||
@ -334,8 +330,7 @@ NEXT_ANGLE:
|
||||
|
||||
NO_TEST:
|
||||
;
|
||||
LD A,0
|
||||
CONT_PAGE EQU $-1
|
||||
CONT_PAGE+1: LD A,0
|
||||
;
|
||||
OUT (SLOT1),A
|
||||
|
||||
@ -360,8 +355,7 @@ CONT_PAGE EQU $-1
|
||||
PUSH HL
|
||||
PUSH BC
|
||||
;
|
||||
LD A,#0F
|
||||
CORNER_1 EQU $-1
|
||||
CORNER_1+1: LD A,#0F
|
||||
;
|
||||
AND #0F
|
||||
RRCA
|
||||
@ -392,13 +386,11 @@ CORNER_1 EQU $-1
|
||||
|
||||
TRACE_END:
|
||||
;
|
||||
LD A,0
|
||||
TRACE_RET_SLOT3 EQU $-1
|
||||
TRACE_RET_SLOT3+1: LD A,0
|
||||
;
|
||||
OUT (SLOT3),A
|
||||
OUT (SLOT3),A
|
||||
;
|
||||
LD A,5
|
||||
TRACE_RET_SLOT1 EQU $-1
|
||||
TRACE_RET_SLOT1+1: LD A,5
|
||||
;
|
||||
OUT (SLOT1),A
|
||||
LD A,0
|
||||
@ -483,7 +475,7 @@ SET_PICTURE:
|
||||
ENDIF
|
||||
;
|
||||
ld bc,#0100 ; ¬ áèâ ¡¨à®¢ ¨¥ - 1
|
||||
OUT (C),B
|
||||
OUT (C),C
|
||||
|
||||
LD DE,(SCREEN_1)
|
||||
LD B,5 ; 5 ‘’<E28098>€<EFBFBD>ˆ–
|
||||
@ -491,7 +483,6 @@ SET_PICTURE:
|
||||
ACC_SetBlockSize
|
||||
LD A,0 ; ¯® 256 ¡ ©â
|
||||
ACC_Off
|
||||
inc a ;!FIXIT ª®áâë«ì, ¨ ç¥ á® áçñâ稪®¬ ªá¥«ï çâ®-â® ¥ â ª
|
||||
OUT (PORT_Y),A
|
||||
|
||||
POP AF
|
||||
@ -704,8 +695,8 @@ WEAPON_OUT:
|
||||
LD A,#58
|
||||
OUT (SLOT3),A
|
||||
|
||||
WEAPON_SWITCH EQU $+1
|
||||
LD HL,#4500 ; ¯®«®¦¥¨¥ á¯à ©â ®àã¦¨ï ¢ áâà ¨æ¥
|
||||
WEAPON_SWITCH+1:
|
||||
LD HL,#4500 ; ¯®«®¦¥¨¥ á¯à ©â ®àã¦¨ï ¢ áâà ¨æ¥
|
||||
;
|
||||
LD DE,(SCREEN_1)
|
||||
LD A,E
|
||||
@ -723,7 +714,6 @@ WEAPON_SWITCH EQU $+1
|
||||
LD BC,#100
|
||||
|
||||
W_OUT_L:
|
||||
|
||||
LD A,#44
|
||||
SUB H
|
||||
OUT (PORT_Y),A
|
||||
@ -874,7 +864,7 @@ MAP_LOOP_1:
|
||||
CP #50
|
||||
JR Z,MAP_LOOP_2
|
||||
|
||||
LD A,0
|
||||
XOR A
|
||||
OUT (PORT_Y),A
|
||||
|
||||
POP AF
|
||||
@ -890,47 +880,43 @@ MAP_LOOP_1:
|
||||
;***************************************
|
||||
;
|
||||
|
||||
WALL:
|
||||
|
||||
; IX+0 - áâà ¨æ á⥪¨
|
||||
; IX+1,2 - ¤à¥á á⥪¨ ¢ áâà ¨æ¥
|
||||
; IX+3 - ¯®«®¦¥¨¥ ¯® ¢¥à⨪ «¨ - § ¤ ¥â ¬ áèâ ¡
|
||||
; IX+4,5 - ¯®«®¦¥¨¥ ¯® £®à¨§®â «¨
|
||||
|
||||
; IX+6,7 - reserved
|
||||
; IX+8,9 - X-add-parameter (ª®í䍿¨¥â ¬ áèâ ¡¨à®¢ ¨ï ¯® Y)
|
||||
; IX+10 - ॠ«ì ï è¨à¨ á⥪¨ ???
|
||||
; IX+11 - ॠ«ì ï ¢ëá®â á⥪¨ ???
|
||||
|
||||
|
||||
IN A,(SLOT3)
|
||||
LD (SLOT3_RET1),A
|
||||
WALL: IN A,(SLOT3)
|
||||
LD (WALL_SLOT3_RET),A
|
||||
IN A,(SLOT1)
|
||||
LD (SLOT1_RET1),A
|
||||
LD (WALL_SLOT1_RET),A
|
||||
IN A,(PORT_Y)
|
||||
LD (RGADR_RET1),A
|
||||
LD (WALL_PORT_Y_RET),A
|
||||
LD A,#58
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD A,(IX+0) ; áâà ¨æ á⥪¨
|
||||
LD A,(IX+0) ; áâà ¨æ á⥪¨
|
||||
OUT (SLOT1),A
|
||||
|
||||
EXX
|
||||
LD C,0 ; ¯®àâ ¬ áèâ ¡
|
||||
LD C,0 ; ¯®àâ ¬ áèâ ¡
|
||||
|
||||
LD H,TABLE_X/256 ; â ¡«¨æ ¢ëá®â ¨ ª®í䍿¨¥â®¢ ¬ áèâ ¡¨à®¢ ¨ï
|
||||
LD L,(IX+3) ; ¯®«®¦¥¨¥ ¯® Y / ®¯à¥¤¥«ï¥â ¢ëá®âã
|
||||
LD A,(HL) ; ¬ áèâ ¡ - LOW
|
||||
LD H,TABLE_X/256 ; â ¡«¨æ ¢ëá®â ¨ ª®í䍿¨¥â®¢ ¬ áèâ ¡¨à®¢ ¨ï
|
||||
LD L,(IX+3) ; ¯®«®¦¥¨¥ ¯® Y / ®¯à¥¤¥«ï¥â ¢ëá®âã
|
||||
LD A,(HL) ; ¬ áèâ ¡ - LOW
|
||||
AND 3
|
||||
LD (X_ADD),A
|
||||
INC H
|
||||
LD A,(HL) ; ¬ áèâ ¡ - HIGH
|
||||
LD A,(HL) ; ¬ áèâ ¡ - HIGH
|
||||
LD (X_ADD2),A
|
||||
DEC H
|
||||
|
||||
LD A,L
|
||||
ADD A,A
|
||||
NEG ; è¨à¨ ¯® £®à¨§®â «¨
|
||||
NEG ; è¨à¨ ¯® £®à¨§®â «¨
|
||||
|
||||
BIT 0,(IX+M_VAR3)
|
||||
JR Z,NO_DEL2
|
||||
@ -946,13 +932,13 @@ NO_DEL2:
|
||||
NO_DEL4:
|
||||
EXX
|
||||
|
||||
LD B,A ; ॠ«ì ï è¨à¨ á⥪¨???
|
||||
; LD B,(IX+10) ; è¨à¨ á⥪¨
|
||||
LD B,A ; ॠ«ì ï è¨à¨ á⥪¨???
|
||||
; LD B,(IX+10) ; è¨à¨ á⥪¨
|
||||
|
||||
LD C,0 ; X-start-LOW
|
||||
LD C,0 ; X-start-LOW
|
||||
|
||||
; LD HL,(SCREEN_1)
|
||||
LD E,(IX+4) ; - ¤à¥á ¯® £®à¨§®â «¨
|
||||
LD E,(IX+4) ; - ¤à¥á ¯® £®à¨§®â «¨
|
||||
LD D,(IX+5)
|
||||
; ADD HL,DE
|
||||
|
||||
@ -961,15 +947,15 @@ NO_DEL4:
|
||||
; BIT 7,D
|
||||
; JR Z,WALL_NO_SCF
|
||||
; SCF
|
||||
; EX AF,AF' ; á¯àïâ âì ¢ AF - ¯ à ¬¥âà áç¥â稪 ¨ ä« £
|
||||
; ; CF - á⥪ ¥ ¤®è« ¤® ªà ï
|
||||
; ; ¢ A ᪮«ìª® «¨¨© ¤® ç « íªà
|
||||
; EX AF,AF' ; á¯àïâ âì ¢ AF - ¯ à ¬¥âà áç¥â稪 ¨ ä« £
|
||||
; ; CF - á⥪ ¥ ¤®è« ¤® ªà ï
|
||||
; ; ¢ A ᪮«ìª® «¨¨© ¤® ç « íªà
|
||||
;WALL_NO_SCF:
|
||||
;
|
||||
; LD HL,140h
|
||||
; AND A
|
||||
; SBC HL,DE
|
||||
; LD A,L ; ¢ A - ᪮«ìª® «¨¨© ®áâ «®áì ¤® ª®æ íªà ??
|
||||
; LD A,L ; ¢ A - ᪮«ìª® «¨¨© ®áâ «®áì ¤® ª®æ íªà ??
|
||||
|
||||
LD HL,(SCREEN_1)
|
||||
ADD HL,DE
|
||||
@ -977,7 +963,7 @@ NO_DEL4:
|
||||
; LD A,(IX+3)
|
||||
LD A,B
|
||||
RRA
|
||||
AND #7F ; à §¤¥«¨«¨ 2
|
||||
AND #7F ; à §¤¥«¨«¨ 2
|
||||
LD E,A
|
||||
; SUB 128
|
||||
; LD E,A
|
||||
@ -1064,11 +1050,11 @@ NO_WRITE_LINE:
|
||||
INC DE ; ®¢®¥ § 票¥ X
|
||||
|
||||
LD A,C
|
||||
X_ADD2 equ $+1
|
||||
ADD A,0 ; X-add-parameter 2
|
||||
X_ADD2+1:
|
||||
ADD A,0 ; X-add-parameter 2
|
||||
LD C,A
|
||||
X_ADD equ $+1
|
||||
LD A,0 ; X-add-parameter
|
||||
X_ADD+1:
|
||||
LD A,0 ; X-add-parameter
|
||||
ADC A,H
|
||||
LD H,A ; á«¥¤ãîé ï «¨¨ï WOLL
|
||||
|
||||
@ -1076,14 +1062,14 @@ X_ADD equ $+1
|
||||
|
||||
NO_WRITE_ALL:
|
||||
;
|
||||
RGADR_RET1 EQU $+1
|
||||
LD A,0
|
||||
WALL_PORT_Y_RET+1:
|
||||
LD A,0
|
||||
OUT (PORT_Y),A
|
||||
SLOT3_RET1 EQU $+1
|
||||
LD A,0
|
||||
WALL_SLOT3_RET+1:
|
||||
LD A,0
|
||||
OUT (SLOT3),A
|
||||
SLOT1_RET1 EQU $+1
|
||||
LD A,5
|
||||
WALL_SLOT1_RET+1:
|
||||
LD A,5
|
||||
OUT (SLOT3),A
|
||||
RET
|
||||
|
||||
@ -1321,7 +1307,7 @@ SND_OUT_S:
|
||||
DJNZ SND_OUT_S
|
||||
|
||||
LD A,#C9 ; § ¡¨âì ¢®§¢à â ¢ ¯à®£à ¬¬ã ¨£à ¨ï ¬ã§ëª¨
|
||||
LD (MemPatch_SoundOnOff),A
|
||||
LD (SoundOnOff),A
|
||||
|
||||
POP BC
|
||||
POP AF
|
||||
@ -1332,7 +1318,7 @@ SND_CONTINUE: ;
|
||||
PUSH BC
|
||||
|
||||
LD A,0 ; § ¡¨âì NOP ¢ ¯à®£à ¬¬ã ¨£à ¨ï ¬ã§ëª¨
|
||||
LD (MemPatch_SoundOnOff),A
|
||||
LD (SoundOnOff),A
|
||||
|
||||
POP BC
|
||||
POP AF
|
||||
@ -1355,7 +1341,7 @@ SND_INIT:
|
||||
; LD (SND_P),A
|
||||
|
||||
LD A,0
|
||||
LD (MemPatch_SoundOnOff),A
|
||||
LD (SoundOnOff),A
|
||||
|
||||
LD B,0
|
||||
IN A,(SLOT3)
|
||||
@ -1373,7 +1359,7 @@ SOUND:
|
||||
ENDIF
|
||||
;
|
||||
IF YesSound
|
||||
MemPatch_SoundOnOff:
|
||||
SoundOnOff:
|
||||
NOP ; áî¤ ¢áâ ¢«ï¥âáï ª®¬ ¤ RET ¤«ï ®âª«îç¥¨ï §¢ãª ¨ NOP ¤«ï ¢ª«î票ï
|
||||
PUSH AF
|
||||
PUSH HL
|
||||
@ -1400,7 +1386,7 @@ COV_ADR+1:
|
||||
|
||||
IN A,(SLOT3)
|
||||
LD E,A
|
||||
MemPatch_D2_FRAM_SndPage+1:
|
||||
D2_FRAM_SndPage+1:
|
||||
LD A,0
|
||||
OUT (SLOT3),A
|
||||
|
||||
@ -1471,7 +1457,7 @@ SND_INIT1:
|
||||
;_------[—⥨¥ ᥪâ®à®¢ á ¤¨áª ]-------
|
||||
NO_NEW_COUNT:
|
||||
LD HL,-SND_READ_SECTORS*512 ; ¡ãä¥à ¤«ï ¤ ëå
|
||||
LD A,0 ; áâà ¨æ ¡ãä¥à , ¥á«¨ ¤à¥á ¢ ®ª¥ #C000
|
||||
LD A,(D2_FRAM_SndPage) ;!FIXIT ; áâà ¨æ ¡ãä¥à , ¥á«¨ ¤à¥á ¢ ®ª¥ #C000
|
||||
LD DE,(SND_S1) ; ¡á®«îâë© ®¬¥à ᥪâ®à Œ« ¤è ï ç áâì
|
||||
LD IX,(SND_S2) ; ¡á®«îâë© ®¬¥à ᥪâ®à ‘â àè ï ç áâì
|
||||
LD B,SND_READ_SECTORS ; ç¨á«® ç¨â ¥¬ëå ᥪâ®à®¢
|
||||
@ -1508,7 +1494,6 @@ NO_NEW_COUNT:
|
||||
LD (SND_A),HL
|
||||
|
||||
NO_SNDP:
|
||||
|
||||
LD A,B
|
||||
CPL
|
||||
LD (COV_ADR),A
|
||||
@ -1527,22 +1512,22 @@ NO_LD_SND:
|
||||
POP HL
|
||||
POP AF
|
||||
RET
|
||||
ENDIF
|
||||
ENDIF
|
||||
;
|
||||
IF !YesSound
|
||||
IF !YesSound
|
||||
YesSoundZero:
|
||||
PUSH AF
|
||||
PUSH HL
|
||||
CALL KBD_INT
|
||||
POP HL
|
||||
POP AF
|
||||
RET
|
||||
ENDIF
|
||||
PUSH AF
|
||||
PUSH HL
|
||||
CALL KBD_INT
|
||||
POP HL
|
||||
POP AF
|
||||
RET
|
||||
ENDIF
|
||||
|
||||
EFFECTS:
|
||||
IF !YesSound
|
||||
RET
|
||||
ENDIF
|
||||
IF !YesSound
|
||||
RET
|
||||
ENDIF
|
||||
LD DE,(EFF_)
|
||||
LD A,D
|
||||
CP #C0
|
||||
@ -1569,7 +1554,6 @@ EFF_LOOP:
|
||||
LD (EFF_),DE
|
||||
EX AF,AF'
|
||||
OUT (SLOT2),A
|
||||
|
||||
RET
|
||||
;***************************************
|
||||
|
||||
|
||||
516
DOOM2.asm
516
DOOM2.asm
@ -12,21 +12,18 @@
|
||||
|
||||
; IFDEF HARDWARE
|
||||
; DEFINE NORM_ACC 1
|
||||
; DEFINE NORM_syncPORT 1
|
||||
; DEFINE NORM_FastRAM 1
|
||||
; ENDIF
|
||||
; IFDEF ZXMAK2
|
||||
; DEFINE NORM_ACC 0
|
||||
; DEFINE NORM_syncPORT 0
|
||||
; DEFINE NORM_FastRAM 0
|
||||
; ENDIF
|
||||
; IFDEF MAME
|
||||
; DEFINE NORM_ACC 1
|
||||
; DEFINE NORM_syncPORT 0
|
||||
; DEFINE NORM_FastRAM 1
|
||||
; ENDIF
|
||||
|
||||
IFNDEF YesSound : DEFINE YesSound 0 : ENDIF
|
||||
IFNDEF YesSound : DEFINE YesSound 1 : ENDIF
|
||||
|
||||
DEFINE EXE_HEADER 1
|
||||
; DEFINE NEED_LOADER 1
|
||||
@ -90,8 +87,7 @@ TABLE_W EQU #2000 ; ⥪
|
||||
ORG org_addr - CLP_Buffer
|
||||
ENDIF
|
||||
|
||||
BEGIN:
|
||||
DI
|
||||
BEGIN: DI
|
||||
|
||||
LD (CMD_Line),IX ; á®åà ¨âì 㪠§ â¥«ì ¯ à ¬¥âàë § ¯ãáª
|
||||
CMD_Line+1:
|
||||
@ -128,11 +124,11 @@ Loader_length EQU 0
|
||||
;-----[ˆ¨æ¨ «¨§ æ¨ï Covox-Blaster]-----
|
||||
; IF YesSound
|
||||
ld bc,CBL.SYS_PORT
|
||||
ld a,#80
|
||||
ld a,CBL.Blaster + CBL.Mono + CBL.is8bit + CBL.Int_off + CBL.KHz_16old
|
||||
out (c),a
|
||||
;
|
||||
;-----------[§ £«ãè¨âì §¢ãª]------------
|
||||
LD A,#FF ; !FIXIT à §¢¥ â ª ¤® £«ãè¨âì? <20>¥ à㤨¬¥âë Sp97?
|
||||
LD A,#FF ; !FIXIT à §¢¥ â ª ¤® £«ãè¨âì? <20>¥ à㤨¬¥âë Sp97?
|
||||
1: CALL CLEAR_COVOX_X
|
||||
DEC A
|
||||
CP #80
|
||||
@ -149,15 +145,15 @@ Loader_length EQU 0
|
||||
ld a,(RAMBlkIDs)
|
||||
ld bc,BIOS.GetMemPage
|
||||
rst ToBIOS
|
||||
di
|
||||
ld (MemPatch_PalitrePage),a
|
||||
;di
|
||||
ld (PalitrePage),a
|
||||
|
||||
ld a,(RAMBlkIDs+3)
|
||||
ld bc,BIOS.GetMemPage
|
||||
rst ToBIOS
|
||||
di
|
||||
ld (MemPatch_D2_FRAM_page),a
|
||||
DI
|
||||
;di
|
||||
ld (D2_FRAM_page),a
|
||||
;DI
|
||||
|
||||
CALL CLEAR_GRAF_SCR
|
||||
|
||||
@ -175,9 +171,11 @@ Loader_length EQU 0
|
||||
CALL SET_PAL
|
||||
|
||||
;----[®âªàëâì ¯®àâë ¬ áèâ ¡¨à®¢ ¨ï]----
|
||||
; ®¤¨ ¢ãâ२© ¯®àâ ¬ áèâ ¡¨à®¢ ¨ï ¬ ¯¯¨âáï ¤¨ ¯¯ §® #XX00
|
||||
; ¢¥è¨å ¯®à⮢. Write, Dos off, CNF 0.
|
||||
LD A,1
|
||||
LD HL, %0000'0100'0000'0000
|
||||
LD DE, %1111'1110'0110'1111
|
||||
LD HL, %0000'0100'0000'0000 ; § 票¥
|
||||
LD DE, %1111'1110'0110'1111 ; ¬ áª
|
||||
LD BC,ACEX.SCALE*256 + BIOS.DCP_CONFIG
|
||||
RST ToBIOS
|
||||
|
||||
@ -186,42 +184,30 @@ Loader_length EQU 0
|
||||
; LD A,DCP_PAGE
|
||||
; OUT (SLOT3),A
|
||||
; LD A,ACEX.SCALE
|
||||
|
||||
;
|
||||
; ®¤¨ ¢ãâ२© ¯®àâ ¬ áèâ ¡¨à®¢ ¨ï
|
||||
; ¬ ¯¯¨âáï ¥áª®«ìª® ¤¨ ¯¯ §®®¢
|
||||
; ¢¥è¨å ¯®à⮢
|
||||
; Œ áª
|
||||
|
||||
; LD (#C400),A ; ¯®àâ #0000 Dos off
|
||||
; LD (#C410),A ; ¯®àâ #2000 Dos off
|
||||
; LD (#C480),A ; ¯®àâ #4000 Dos off
|
||||
; LD (#C490),A ; ¯®àâ #6000 Dos off
|
||||
; LD (#C500),A ; ¯®àâ #8000 Dos off
|
||||
; LD (#C510),A ; ¯®àâ #A000 Dos off
|
||||
; LD (#C580),A ; ¯®àâ #C000 Dos off
|
||||
; LD (#C590),A ; ¯®àâ #E000 Dos off
|
||||
|
||||
; LD (#C400),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C410),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C480),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C490),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C500),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C510),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C580),A ; ¯®àâ #XX00 Dos off
|
||||
; LD (#C590),A ; ¯®àâ #XX00 Dos off
|
||||
; EX AF,AF'
|
||||
; OUT (SLOT3),A
|
||||
;---------------------------------------
|
||||
EXX
|
||||
LD BC,#100 ; ¬ áèâ ¡ 1:1
|
||||
LD D,0
|
||||
OUT (C),D
|
||||
EXX
|
||||
; €ªâ¨¢ æ¨ï €ªá¥«ï ¬ áèâ ¡¨à®¢ ¨ï, ®¡à ⮠⮫쪮 ç¥à¥§ à¥á¥â
|
||||
LD BC,#100 ; C - ¬ áèâ ¡ 1:1
|
||||
OUT (C),C
|
||||
;-----------------------------------------------------------------------
|
||||
|
||||
;
|
||||
; IFN NORM_syncPORT
|
||||
; DI
|
||||
; LD A, +(high im_handler_emulator)
|
||||
; LD I,A
|
||||
; ; IM 2 - ¯®ª ¥ ¢ª«îç ¥¬, ¯à®æ¥¤ãà ¯à¥àë¢ ¨ï ¯àë£ ¥â ¢ ªíè, ® ¥ ¢áâ ¢«¥ ¨ ¥ ¯à®£à㦥
|
||||
; ENDIF
|
||||
|
||||
;-----------------------------------------------------------------------
|
||||
CALL MAIN
|
||||
;------------------------------------------------------------------------
|
||||
;-----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
;-----------------------------------------------------------------------
|
||||
|
||||
; E)eeeeee X) xx I)iiii T)tttttt
|
||||
; E) X) xx I) T)
|
||||
; E)eeeee X)xx I) T)
|
||||
@ -230,7 +216,7 @@ Loader_length EQU 0
|
||||
; E)eeeeee X) xx I)iiii T)
|
||||
|
||||
|
||||
;------------------------------------------------------------------------
|
||||
;-----------------------------------------------------------------------
|
||||
|
||||
;----[LP_OPEN_S]------------------------
|
||||
; Žâªàë⨥ áâ ¤ àâëå ®ª®
|
||||
@ -266,16 +252,16 @@ RETURN_POINT: ;
|
||||
OUT (SLOT3),A
|
||||
LD (#C000),HL
|
||||
HALT_L:
|
||||
DI
|
||||
;DI
|
||||
HALT
|
||||
JR HALT_L
|
||||
;---------------------------------------
|
||||
|
||||
|
||||
SET_PAL_x:
|
||||
FRAM_OFF
|
||||
IN A,(FastRAM.OFF)
|
||||
CALL SET_PAL
|
||||
FRAM_ON
|
||||
IN A,(FastRAM.ON)
|
||||
RET
|
||||
|
||||
SET_PAL:
|
||||
@ -294,7 +280,7 @@ SET_PAL:
|
||||
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
MemPatch_PalitrePage+1:
|
||||
PalitrePage+1:
|
||||
LD A,#FF
|
||||
OUT (SLOT3),A
|
||||
|
||||
@ -304,7 +290,7 @@ MemPatch_PalitrePage+1:
|
||||
LD B,#FF
|
||||
LD C,BIOS.PIC_SET_PAL ; ãáâ ®¢ª ¯ «¨âàë
|
||||
RST ToBIOS
|
||||
DI
|
||||
;DI
|
||||
|
||||
LD HL,#C000
|
||||
LD DE,0
|
||||
@ -312,7 +298,7 @@ MemPatch_PalitrePage+1:
|
||||
LD B,#FF
|
||||
LD C,BIOS.PIC_SET_PAL ; ãáâ ®¢ª ¯ «¨âàë
|
||||
RST ToBIOS
|
||||
DI
|
||||
;DI
|
||||
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
@ -324,12 +310,12 @@ CLEAR_GRAF_SCR:
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
|
||||
LD (MemPatch_SPSave2),SP
|
||||
LD (SPSave2),SP
|
||||
|
||||
LD A,#50
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD A,0
|
||||
XOR A
|
||||
OUT (PORT_Y),A
|
||||
|
||||
LD SP,#C040 + 640
|
||||
@ -339,10 +325,7 @@ CLEAR_GRAF_SCR:
|
||||
LOOP_CLS:
|
||||
ACC_SetBlockSize
|
||||
LD E,0
|
||||
ACC_Off ; !FIXIT ã¡à âì?????
|
||||
|
||||
LD D,E
|
||||
|
||||
ACC_FillScreenOneByte
|
||||
PUSH DE
|
||||
PUSH DE
|
||||
@ -350,7 +333,7 @@ LOOP_CLS:
|
||||
|
||||
DJNZ LOOP_CLS
|
||||
;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
MemPatch_SPSave2+1:
|
||||
SPSave2+1:
|
||||
LD SP,0
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
@ -411,7 +394,7 @@ MemPatch_SPSave2+1:
|
||||
;
|
||||
|
||||
FLAG: DB 0
|
||||
SAVE_RGA: DB 0
|
||||
;SAVE_PORT_Y: DB 0
|
||||
;
|
||||
;
|
||||
CLEAR_COVOX:
|
||||
@ -465,8 +448,7 @@ LOOP_PAL_D:
|
||||
SUB E
|
||||
JR NC,NO_Z
|
||||
XOR A
|
||||
NO_Z:
|
||||
LD (HL),A
|
||||
NO_Z: LD (HL),A
|
||||
INC L
|
||||
DEC D
|
||||
JR NZ,LOOP_PAL_D
|
||||
@ -489,12 +471,11 @@ NO_PAL_EXE:
|
||||
;
|
||||
;
|
||||
;
|
||||
MAIN:
|
||||
CALL INIT_TABLE
|
||||
MAIN: CALL INIT_TABLE
|
||||
RET C
|
||||
|
||||
IN A,(PORT_Y)
|
||||
LD (SAVE_RGA),A
|
||||
;IN A,(PORT_Y)
|
||||
;LD (SAVE_PORT_Y),A
|
||||
LD A,#C0
|
||||
OUT (PORT_Y),A
|
||||
CALL RECALC_MAP
|
||||
@ -504,10 +485,10 @@ MAIN:
|
||||
;---------------------------------------
|
||||
|
||||
|
||||
LD A,(SAVE_RGA)
|
||||
OUT (PORT_Y),A
|
||||
;LD A,(SAVE_PORT_Y)
|
||||
;OUT (PORT_Y),A
|
||||
|
||||
ret c ; 㦮 «¨???!!!
|
||||
RET C ; 㦮 «¨???!!!
|
||||
|
||||
XOR A
|
||||
LD (LAST_KEY),A
|
||||
@ -574,7 +555,7 @@ TAB_320x256_1
|
||||
;----[¯¥à¥¡à®á ç á⨠ª®¤ ¢ FastRAM]----
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
MemPatch_D2_FRAM_page+1:
|
||||
D2_FRAM_page+1:
|
||||
LD A,#FF
|
||||
OUT (SLOT3),A
|
||||
|
||||
@ -589,34 +570,27 @@ MemPatch_D2_FRAM_page+1:
|
||||
; ¤® ¯®â®¬ ®à¬ «ì® ¢ë¤¥«ïâì ¨
|
||||
; ®á¢®¡®¦¤ âì ¯ ¬ïâì, ¥ ¢®â íâ® ¢áñ
|
||||
;
|
||||
ld b,1
|
||||
ld b,2
|
||||
ld c,Dss.GetMem
|
||||
rst ToDSS
|
||||
PUSH AF ; ID ¡«®ª á⥪
|
||||
ld bc,BIOS.GetMemPage
|
||||
rst ToBIOS
|
||||
LD (MemPatch_CatPage),a
|
||||
;
|
||||
LD (CatPage),a
|
||||
ld b,1
|
||||
POP AF ; ID ¡«®ª á® á⥪
|
||||
ld c,BIOS.GetMemPage
|
||||
rst ToBIOS
|
||||
di
|
||||
;
|
||||
ld (DOOM2_SndPage),a
|
||||
ld (D2_FRAM_SndPage+#B000),a
|
||||
;di
|
||||
;----[]
|
||||
ENDIF
|
||||
|
||||
FRAM_ON
|
||||
IN A,(FastRAM.ON)
|
||||
|
||||
LD HL,#C000
|
||||
LD DE,#1000
|
||||
LD BC,D2_fram_END-TRACE
|
||||
LDIR
|
||||
|
||||
|
||||
IF YesSound
|
||||
ld (MemPatch_D2_FRAM_SndPage),a
|
||||
ld (MemPatch_DOOM2_SndPage),a
|
||||
ENDIF
|
||||
|
||||
; IFN NORM_syncPORT
|
||||
; IM 2 ; ¢®â ⥯¥àì ¬®¦® ¢ª«îç âì
|
||||
; ENDIF
|
||||
@ -639,10 +613,10 @@ MemPatch_D2_FRAM_page+1:
|
||||
|
||||
CALL CLEAR_COVOX
|
||||
|
||||
FRAM_OFF
|
||||
IN A,(FastRAM.OFF)
|
||||
CALL INIT_HDD_WORK
|
||||
|
||||
FRAM_ON
|
||||
IN A,(FastRAM.ON)
|
||||
SOUND_SWITCH:
|
||||
IF YesSound
|
||||
LD HL,NAMES+1
|
||||
@ -660,9 +634,16 @@ SOUND_S1:
|
||||
RLCA
|
||||
RLCA
|
||||
RLCA
|
||||
ADD A,#80
|
||||
LD E,A
|
||||
LD D,#80
|
||||
;
|
||||
ADD A,low (NAMES+2)
|
||||
LD E,A
|
||||
LD A,0
|
||||
RLA
|
||||
ADD A,high (NAMES+2)
|
||||
LD D,A
|
||||
;ADD A,#80
|
||||
;LD E,A
|
||||
;LD D,#80
|
||||
CALL SET_SND_FILE
|
||||
CALL INIT_SOUND
|
||||
ENDIF
|
||||
@ -940,7 +921,7 @@ M_VAR3 EQU $-MONSTR_DAT
|
||||
; bit 6 - ¯®ª §ë¢ âì ®¤¨ 横«
|
||||
; bit 7 - ¥ ¢ë¢®¤¨âì
|
||||
;
|
||||
M_VAR4 EQU $-MONSTR_DAT
|
||||
M_VAR4 EQU $-MONSTR_DAT
|
||||
DB 0 ; <20>¥à¥ª«î票¥ ¬®áâà ADD ¯ à ¬¥âà
|
||||
|
||||
MONSTR_D_LEN EQU $-MONSTR_DAT ;á«¥¤ãî騩 ¬®áâà
|
||||
@ -969,257 +950,28 @@ MONSTR_DATS:
|
||||
;
|
||||
; **************************************
|
||||
;
|
||||
MSD_DATS:
|
||||
DW 0,0,0,0
|
||||
DW 0,0,0,0
|
||||
|
||||
;CAT_PAGE EQU 15
|
||||
|
||||
EFF_PAGE: DB #FF
|
||||
PAGE_M_PLACE: DB #FF
|
||||
PAGE_M_PLACE: DB #FF
|
||||
FIRE_PAGE: DB #FF
|
||||
BAR_PAGE: DB #FF
|
||||
BFGF_PAGE: DB #FF
|
||||
|
||||
MONSTR_END_T: DW MONSTR_TABLE
|
||||
|
||||
;=======================================================================
|
||||
;=======================================================================
|
||||
|
||||
;-------[¨¨æ¨ «¨§ æ¨ï ¢¨ç¥áâ¥à ]------; “<><E2809C>€’œ!!!
|
||||
INIT_HDD_WORK:
|
||||
INCLUDE 'Music_4x.asm'
|
||||
|
||||
IFN YesSound
|
||||
RET
|
||||
ENDIF
|
||||
;=======================================================================
|
||||
;=======================================================================
|
||||
|
||||
LD C,BIOS.HDD_INIT
|
||||
RST ToBIOS
|
||||
JR C,INIT_HDD_WORK
|
||||
;---------------------------------------
|
||||
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD HL,SYS_PAGE.MSD_FAT_SEC
|
||||
LD DE,MSD_DATS
|
||||
LD BC,16
|
||||
LDIR
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
|
||||
;-----[ç¨â âì ᥪâ®àë á ¢¨ç¥áâ¥à ]-----
|
||||
LD HL,#C000 ; ¤à¥á ¡ãä¥à ¤ ëå
|
||||
LD DE,(MSD_DATS+4) ; CAT TABLE. ¡á®«îâë© ®¬¥à ᥪâ®à ¬« ¤è ï ç áâì
|
||||
LD IX,(MSD_DATS+6) ; ¡á®«îâë© ®¬¥à ᥪâ®à áâ àè ï ç áâì
|
||||
LD B,32 ; ç¨á«® ç¨â ¥¬ëå ᥪâ®à®¢
|
||||
MemPatch_CatPage EQU $+1
|
||||
LD A,15 ; áâà ¨æ ¡ãä¥à , ¥á«¨ ¤à¥á ¢ ®ª¥ 0C000h
|
||||
LD C,BIOS.HDD_READ
|
||||
RST ToBIOS ; § £à㧨âì CAT
|
||||
;---------------------------------------
|
||||
RET
|
||||
|
||||
|
||||
SND_SEC1: DW 12525 ; ç «ìë© á¥ªâ®à
|
||||
SND_SEC2: DW 0
|
||||
SND_L1: DW 1720H ; ¤«¨
|
||||
SND_L2: DW 0
|
||||
|
||||
SND_S1: DW 12525 ; ⥪ã訩 ᥪâ®à
|
||||
SND_S2: DW 0
|
||||
SND_C1: DW 1720H ; ®áâ ⮪ ¤® ª®æ
|
||||
SND_C2: DW 0
|
||||
|
||||
SET_SND_FILE:
|
||||
IFN YesSound
|
||||
ret
|
||||
ENDIF
|
||||
|
||||
CALL OPEN_FILE
|
||||
RET C
|
||||
|
||||
LD (SND_SEC1),IX ; ᥪâ®à ¬ã§ëª¨!!!
|
||||
LD (SND_SEC2),HL
|
||||
LD HL,(FILE_DATA+2)
|
||||
LD DE,(FILE_DATA+4)
|
||||
AND A
|
||||
RR D
|
||||
RR E
|
||||
RR H
|
||||
LD L,H
|
||||
LD H,E
|
||||
LD E,D
|
||||
LD D,0
|
||||
LD (SND_L1),HL ; ¤«¨ ¢ ᥪâ®à å
|
||||
LD (SND_L2),DE ; ¤«¨ ¢ ᥪâ®à å
|
||||
AND A
|
||||
RET
|
||||
|
||||
SWITCH_SND:
|
||||
NAME_S+1: LD DE,NAME1
|
||||
CALL SET_SND_FILE
|
||||
JR C,SWITCH_X
|
||||
|
||||
LD HL,(NAME_S)
|
||||
LD BC,16
|
||||
ADD HL,BC
|
||||
LD (NAME_S),HL
|
||||
RET
|
||||
|
||||
SWITCH_X:
|
||||
LD HL,NAME1
|
||||
LD (NAME_S),HL
|
||||
JR SWITCH_SND
|
||||
|
||||
FILE_DATA:
|
||||
DW 0 ; ç «ìë© ª« áâ¥à
|
||||
DW 0,0 ; ¤«¨ ä ©«
|
||||
|
||||
DW 0 ; ⥪ã騩 ª« áâ¥à
|
||||
DW 0,0 ; ⥪ã饥 ¯®«®¦¥¨¥ ¢ ä ©«¥
|
||||
DW 0 ; ⥪ã騩 ®¬¥à ᥪâ®à ¢ ª« áâ¥à¥
|
||||
;
|
||||
OPEN_FILE: ; DE - name
|
||||
CALL FIND_FILE
|
||||
RET C
|
||||
|
||||
LD C,SLOT3
|
||||
IN B,(C)
|
||||
|
||||
PUSH BC
|
||||
LD A,(MemPatch_CatPage)
|
||||
OUT (C),A
|
||||
LD BC,26
|
||||
ADD HL,BC
|
||||
LD DE,FILE_DATA
|
||||
LD BC,6
|
||||
LDIR
|
||||
|
||||
POP BC
|
||||
OUT (C),B
|
||||
|
||||
LD HL,(FILE_DATA)
|
||||
LD (FILE_DATA+6),HL
|
||||
LD HL,0
|
||||
LD (FILE_DATA+8),HL
|
||||
LD (FILE_DATA+10),HL
|
||||
LD (FILE_DATA+12),HL
|
||||
|
||||
LD IX,(FILE_DATA) ; ®¬¥à ¯¥à¢®£® ª« áâ¥à
|
||||
DEC IX
|
||||
DEC IX ; -2 !!!
|
||||
LD HL,0
|
||||
SCF
|
||||
LD DE,(MSD_DATS+13) ; ¤«¨ ª« áâ¥à ¢ ¡ ©â å
|
||||
RR D
|
||||
RR E
|
||||
SEC_MUL:
|
||||
RR D
|
||||
RR E
|
||||
JR C,SECT_X
|
||||
ADD IX,IX
|
||||
ADC HL,HL
|
||||
JR SEC_MUL
|
||||
|
||||
SECT_X:
|
||||
LD DE,(MSD_DATS+8)
|
||||
ADD IX,DE
|
||||
LD DE,(MSD_DATS+10)
|
||||
ADC HL,DE ; HL:IX - ®¬¥à ¯¥à¢®£® ᥪâ®à ä ©«
|
||||
|
||||
AND A
|
||||
RET
|
||||
;
|
||||
;DE - name - 11 ᨬ¢®«®¢
|
||||
FIND_FILE:
|
||||
;
|
||||
LD C,SLOT3
|
||||
IN B,(C)
|
||||
PUSH BC
|
||||
|
||||
LD A,(MemPatch_CatPage)
|
||||
OUT (C),A
|
||||
|
||||
LD HL,#C000
|
||||
|
||||
NEXT_LOOP:
|
||||
LD B,11
|
||||
PUSH DE
|
||||
|
||||
NAME_LOOP:
|
||||
LD A,(DE)
|
||||
CP (HL)
|
||||
JR NZ,NEXT_NAME
|
||||
INC HL
|
||||
INC DE
|
||||
DJNZ NAME_LOOP
|
||||
|
||||
POP DE
|
||||
LD A,L
|
||||
AND #E0
|
||||
LD L,A
|
||||
|
||||
POP BC
|
||||
OUT (C),B
|
||||
AND A
|
||||
RET ; HL - ¤ ë¥ ä ©« ¢ áâà ¨æ¥ 6
|
||||
|
||||
NEXT_NAME:
|
||||
POP DE
|
||||
LD A,L
|
||||
AND #E0
|
||||
LD L,A
|
||||
LD BC,#20
|
||||
ADD HL,BC
|
||||
LD A,(HL)
|
||||
AND A
|
||||
JR Z,END_CAT
|
||||
LD A,H
|
||||
AND A
|
||||
JR NZ,NEXT_LOOP
|
||||
|
||||
END_CAT:
|
||||
POP BC
|
||||
OUT (C),B
|
||||
SCF
|
||||
RET
|
||||
|
||||
HDD_FN:
|
||||
EX AF,AF'
|
||||
FRAM_OFF ; ®âª«îç ¥¬ ªíè
|
||||
IN A,(SLOT1)
|
||||
PUSH AF
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
LD A,5 ; <20>…<EFBFBD>…„…‹€’œ!!!
|
||||
OUT (SLOT1),A
|
||||
MemPatch_DOOM2_SndPage EQU $+1
|
||||
LD A,0
|
||||
OUT (SLOT3),A
|
||||
|
||||
IN A,(PORT_Y)
|
||||
PUSH AF
|
||||
EX AF,AF'
|
||||
|
||||
RST ToBIOS ; ç¨â âì ᥪâ®à á ¢¨ç¥áâ¥à , äãªæ¨ï #45
|
||||
DI
|
||||
|
||||
POP AF
|
||||
OUT (PORT_Y),A
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
POP AF
|
||||
OUT (SLOT1),A
|
||||
FRAM_ON ; ¢ª«îç ¥¬ ªíè
|
||||
RET
|
||||
;
|
||||
; **************************************
|
||||
;
|
||||
|
||||
SKY_1: DB #FF
|
||||
SKY_2: DB #FF
|
||||
PAGE_WEAPON: DB #FF
|
||||
PAGE_WEAPON: DB #FF
|
||||
|
||||
;***************************************
|
||||
;***************************************
|
||||
@ -1416,7 +1168,7 @@ NEXT_HL_FFING:
|
||||
*/
|
||||
|
||||
;***************************************
|
||||
DS #8700-$ ;‚›<E2809A>€‚<E282AC>ˆ‚€<E2809A>ˆ…
|
||||
BLOCK #8700-$,0 ;‚›<E2809A>€‚<E282AC>ˆ‚€<E2809A>ˆ…
|
||||
;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
; âãâ ¢ëà ¢¨¢ ¨¥ 0 ¢ ¬« ¤è¥¬
|
||||
; ¡¨â¥ ¤à¥á
|
||||
@ -1427,7 +1179,7 @@ TABLE_PIC: DS 6
|
||||
;-------[§ £à㧪 à¥áãàᮢ ¨£àë]--------
|
||||
Load_Resources:
|
||||
in a,(SLOT3)
|
||||
ld (.MemPatch_SavePage),a
|
||||
ld (.SavePage),a
|
||||
|
||||
LD B,FilesTBL.END
|
||||
LD DE,FilesTBL
|
||||
@ -1440,7 +1192,7 @@ Load_Resources:
|
||||
ex de,hl
|
||||
ld b,(hl) ; FilesTBL
|
||||
inc hl
|
||||
ld (.MemPatch_FileName),hl
|
||||
ld (.FileName),hl
|
||||
|
||||
; B - à §¬¥à ¡«®ª ¢ áâà ¨æ å
|
||||
ld c,Dss.GetMem
|
||||
@ -1464,12 +1216,12 @@ Load_Resources:
|
||||
push hl ;++¡ãä¥à ᮠᯨ᪮¬ áâà ¨æ
|
||||
push bc ;++᪮«ìª® áâà ¨æ £à㧨¬
|
||||
|
||||
.MemPatch_FileName EQU $+1
|
||||
ld hl,.MemPatch_FileName
|
||||
.FileName+1:
|
||||
ld hl,0
|
||||
ld a,1
|
||||
ld c,Dss.Open
|
||||
rst ToDSS
|
||||
ld (.MemPatch_TempFileID),a
|
||||
ld (.TempFileID),a
|
||||
pop bc ;--᪮«ìª® áâà ¨æ £à㧨¬
|
||||
pop hl ;--¡ãä¥à ᮠᯨ᪮¬ áâà ¨æ
|
||||
|
||||
@ -1481,32 +1233,32 @@ Load_Resources:
|
||||
push hl ;++¡ãä¥à ᮠᯨ᪮¬ áâà ¨æ
|
||||
push bc ;++᪮«ìª® áâà ¨æ £à㧨¬
|
||||
|
||||
.MemPatch_TempFileID EQU $+1
|
||||
ld a,#FF ; ä ©«®¢ë© ¬ ¨¯ã«ïâ®à
|
||||
LD HL,#C000 ; ¤à¥á ¢ ¯ ¬ïâ¨
|
||||
LD DE,#4000 ; ª®«¨ç¥á⢮ ç¨â ¥¬ëå ¡ ©â
|
||||
.TempFileID+1:
|
||||
ld a,#FF ; ä ©«®¢ë© ¬ ¨¯ã«ïâ®à
|
||||
LD HL,#C000 ; ¤à¥á ¢ ¯ ¬ïâ¨
|
||||
LD DE,#4000 ; ª®«¨ç¥á⢮ ç¨â ¥¬ëå ¡ ©â
|
||||
LD C,Dss.Read
|
||||
rst ToDSS
|
||||
DI
|
||||
RST ToDSS
|
||||
;DI
|
||||
|
||||
pop bc ;--᪮«ìª® áâà ¨æ £à㧨¬
|
||||
pop hl ;--¡ãä¥à ᮠᯨ᪮¬ áâà ¨æ
|
||||
pop bc ;--᪮«ìª® áâà ¨æ £à㧨¬
|
||||
pop hl ;--¡ãä¥à ᮠᯨ᪮¬ áâà ¨æ
|
||||
DJNZ .readloop
|
||||
;---[]
|
||||
|
||||
;---[§ ªàë¢ ¥¬]
|
||||
ld a,(.MemPatch_TempFileID)
|
||||
ld a,(.TempFileID)
|
||||
ld c,Dss.Close
|
||||
rst ToDSS
|
||||
;---[]
|
||||
|
||||
ld de,(.MemPatch_FileName)
|
||||
ld de,(.FileName)
|
||||
ld hl,13
|
||||
add hl,de
|
||||
ex de,hl
|
||||
|
||||
POP HL ;--¡ãä¥à ¯®¤ BlockID
|
||||
POP BC ;--áçñâ稪
|
||||
POP HL ;--¡ãä¥à ¯®¤ BlockID
|
||||
POP BC ;--áçñâ稪
|
||||
DJNZ .LR_loop
|
||||
|
||||
;-[à §®¡à âìáï á â ¡«¨æ ¬¨!!!]-
|
||||
@ -1524,30 +1276,39 @@ Load_Resources:
|
||||
pop af
|
||||
ld c,Dss.Close
|
||||
rst ToDSS
|
||||
/*
|
||||
ld hl,MONSTR_TABLE_file
|
||||
ld a,1
|
||||
ld c,Dss.Open
|
||||
rst ToDSS
|
||||
push af
|
||||
|
||||
LD HL,MONSTR_TABLE ; ¤à¥á ¢ ¯ ¬ïâ¨
|
||||
LD DE,MONSTR_TABLE_SIZE ; ª®«¨ç¥á⢮ ç¨â ¥¬ëå ¡ ©â
|
||||
LD C,Dss.Read
|
||||
rst ToDSS
|
||||
; ld hl,MONSTR_TABLE_file
|
||||
; ld a,1
|
||||
; ld c,Dss.Open
|
||||
; rst ToDSS
|
||||
; push af
|
||||
|
||||
pop af
|
||||
ld c,Dss.Close
|
||||
rst ToDSS
|
||||
*/
|
||||
di
|
||||
; LD HL,MONSTR_TABLE ; ¤à¥á ¢ ¯ ¬ïâ¨
|
||||
; LD DE,MONSTR_TABLE_SIZE ; ª®«¨ç¥á⢮ ç¨â ¥¬ëå ¡ ©â
|
||||
; LD C,Dss.Read
|
||||
; rst ToDSS
|
||||
|
||||
; pop af
|
||||
; ld c,Dss.Close
|
||||
; rst ToDSS
|
||||
|
||||
;di
|
||||
;------------------------------
|
||||
.MemPatch_SavePage equ $+1
|
||||
ld a,0
|
||||
.SavePage+1:
|
||||
ld a,0
|
||||
out (SLOT3),a
|
||||
;
|
||||
LD HL,CURRENT_DIR
|
||||
LD C,Dss.CurDir
|
||||
RST ToDSS
|
||||
;
|
||||
LD C,Dss.CurDisk
|
||||
RST ToDSS
|
||||
LD (INIT_HDD_WORK.currentDisk),A
|
||||
;
|
||||
RET
|
||||
|
||||
Temp_Buffer: BLOCK 256,#FF
|
||||
;Temp_Buffer: BLOCK 256,#FF
|
||||
|
||||
TABLE_X_file: db 'table_x.tbl',0
|
||||
;MONSTR_TABLE_file: db 'monsters.tbl',0
|
||||
@ -1900,24 +1661,24 @@ MONSTR_POS:
|
||||
ALIGN 2,0
|
||||
;
|
||||
TABLES_START:
|
||||
X_COORD: DW 090*256
|
||||
Y_COORD: DW 090*256
|
||||
ANGLE_A: DW -160*32+0C000h
|
||||
ANGLE_R: DW 0
|
||||
X_COORD: DW 90*256
|
||||
Y_COORD: DW 90*256
|
||||
ANGLE_A: DW -160*32+#C000
|
||||
ANGLE_R: DW 0
|
||||
|
||||
X_SPEED: DW 300H
|
||||
Y_SPEED: DW 302H
|
||||
A_SPEED: DW 200H
|
||||
X_SPEED: DW #300
|
||||
Y_SPEED: DW #302
|
||||
A_SPEED: DW #200
|
||||
|
||||
TABLE_TRACE: DS 33 ; â ¡«¨æ âà áá¨à®¢ª¨/¡ ª¨ â ¡«¨æë
|
||||
TABLE_WALL: DS 33
|
||||
TABLE_TRACE: BLOCK 33,0 ; â ¡«¨æ âà áá¨à®¢ª¨/¡ ª¨ â ¡«¨æë
|
||||
TABLE_WALL: BLOCK 33,0
|
||||
|
||||
DS TABLES_START+#74-$ ;‚›<E2809A>€‚<E282AC>ˆ‚€<E2809A>ˆ…
|
||||
; BLOCK TABLES_START+#74-$,0 ;‚›<E2809A>€‚<E282AC>ˆ‚€<E2809A>ˆ…
|
||||
|
||||
NAMES: DB 6,1
|
||||
LAST_KEY: DB 0
|
||||
LAST_KEY: DB 0
|
||||
NAMES: DB 6,1
|
||||
|
||||
DS TABLES_START+#7C-$ ;‚›<E2809A>€‚<E282AC>ˆ‚€<E2809A>ˆ…
|
||||
; BLOCK TABLES_START+#7C-$,0 ;‚›<E2809A>€‚<E282AC>ˆ‚€<E2809A>ˆ…
|
||||
|
||||
NAME1: DB "_1X62 CBL "
|
||||
NAME2: DB "2NDREAL3CBL "
|
||||
@ -1945,13 +1706,16 @@ NAME9: DB "_ENI511CCBL "
|
||||
; ENDIF
|
||||
;
|
||||
OUTEND ; ª®¥æ ä ©« doom2.exe
|
||||
DIR_NAME_11: BLOCK 11,0
|
||||
CURRENT_DIR: BLOCK 257,0
|
||||
Temp_Buffer EQU $
|
||||
;
|
||||
;
|
||||
DISPLAY "DOOM2.EXE starts - ",/H,BEGIN
|
||||
DISPLAY "DOOM2.EXE ends - ",/H,$
|
||||
DISPLAY "DOOM2.EXE size - ",/H,$-BEGIN
|
||||
|
||||
FRAM_PROG_1000H:
|
||||
;FRAM_PROG_1000H:
|
||||
include 'D2_FRAM.asm'
|
||||
;
|
||||
END
|
||||
|
||||
431
Music_4x.asm
Normal file
431
Music_4x.asm
Normal file
@ -0,0 +1,431 @@
|
||||
|
||||
;-----------------------------------------------------------------------
|
||||
;-------[¨¨æ¨ «¨§ æ¨ï ¢¨ç¥áâ¥à ]------;
|
||||
INIT_HDD_WORK:
|
||||
IFN YesSound
|
||||
RET
|
||||
ENDIF
|
||||
|
||||
.currentDisk+1: ;
|
||||
LD A,0
|
||||
OR #80
|
||||
LD HL,Temp_Buffer
|
||||
LD BC,Dss.DskInfo
|
||||
RST ToDSS
|
||||
;
|
||||
LD B,4 ;!HARDCODE ®¬¥à 㦮£® ¯ à ¬¥âà
|
||||
LD DE,0
|
||||
LD HL,Temp_Buffer
|
||||
.loop_param: ADD HL,DE
|
||||
LD E,(HL)
|
||||
INC HL
|
||||
DJNZ .loop_param
|
||||
LD A,(HL)
|
||||
AND #80
|
||||
JR Z,.no_change_Disk
|
||||
CP #90
|
||||
JR NC,.no_change_Disk
|
||||
;
|
||||
LD A,3
|
||||
AND (HL)
|
||||
LD D,A
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
RLCA
|
||||
RLCA
|
||||
;
|
||||
OR D
|
||||
AND #0F
|
||||
JR .start
|
||||
;
|
||||
.no_change_Disk:;
|
||||
XOR A
|
||||
.start: LD C,BIOS.HDD_PART ; IDE-1/IDE-2
|
||||
RST ToBIOS
|
||||
;
|
||||
.loop: LD C,BIOS.HDD_INIT
|
||||
RST ToBIOS
|
||||
JR C,.loop
|
||||
;
|
||||
|
||||
CALL BPB_SetUp
|
||||
;-----------------------------------------------------------------------
|
||||
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD HL,SYS_PAGE.MSD_FAT_SEC
|
||||
LD DE,MSD_DATS
|
||||
LD BC,16
|
||||
LDIR
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
;!TODO music and dirs
|
||||
; ¯ àᨬ áâப㠯ãâ¨
|
||||
; LD HL,CURRENT_DIR+1
|
||||
; LD DE,DIR_NAME_11
|
||||
; PUSH DE
|
||||
; PUSH HL
|
||||
; LD BC,1*256 + Dss.DosName
|
||||
; RST ToDSS
|
||||
|
||||
;-----[ç¨â âì ᥪâ®àë á ¢¨ç¥áâ¥à ]-----
|
||||
READ_DIR:
|
||||
LD HL,#C000 ; ¤à¥á ¡ãä¥à ¤ ëå
|
||||
LD DE,(MSD_DATS+4) ; CAT TABLE. ¡á®«îâë© ®¬¥à ᥪâ®à ¬« ¤è ï ç áâì
|
||||
LD IX,(MSD_DATS+6) ; ¡á®«îâë© ®¬¥à ᥪâ®à áâ àè ï ç áâì
|
||||
LD B,32 ; ç¨á«® ç¨â ¥¬ëå ᥪâ®à®¢
|
||||
CatPage+1:
|
||||
LD A,15 ; áâà ¨æ ¡ãä¥à , ¥á«¨ ¤à¥á ¢ ®ª¥ #C000
|
||||
LD C,BIOS.HDD_READ
|
||||
RST ToBIOS ; § £à㧨âì CAT
|
||||
RET
|
||||
;---------------------------------------
|
||||
|
||||
MSD_DATS: WORD 0,0,0,0,0,0,0,0
|
||||
|
||||
SND_SEC1: DW 12525 ; ç «ìë© á¥ªâ®à
|
||||
SND_SEC2: DW 0
|
||||
SND_L1: DW #1720 ; ¤«¨
|
||||
SND_L2: DW 0
|
||||
|
||||
SND_S1: DW 12525 ; ⥪ã訩 ᥪâ®à
|
||||
SND_S2: DW 0
|
||||
SND_C1: DW #1720 ; ®áâ ⮪ ¤® ª®æ
|
||||
SND_C2: DW 0
|
||||
|
||||
SET_SND_FILE:
|
||||
IFN YesSound
|
||||
ret
|
||||
ENDIF
|
||||
|
||||
CALL OPEN_FILE
|
||||
RET C
|
||||
|
||||
LD (SND_SEC1),IX ; ᥪâ®à ¬ã§ëª¨!!!
|
||||
LD (SND_SEC2),HL
|
||||
LD HL,(FILE_DATA+2)
|
||||
LD DE,(FILE_DATA+4)
|
||||
AND A
|
||||
RR D
|
||||
RR E
|
||||
RR H
|
||||
LD L,H
|
||||
LD H,E
|
||||
LD E,D
|
||||
LD D,0
|
||||
LD (SND_L1),HL ; ¤«¨ ¢ ᥪâ®à å
|
||||
LD (SND_L2),DE ; ¤«¨ ¢ ᥪâ®à å
|
||||
AND A
|
||||
RET
|
||||
|
||||
SWITCH_SND:
|
||||
NAME_S+1: LD DE,NAME1
|
||||
CALL SET_SND_FILE
|
||||
JR C,SWITCH_X
|
||||
|
||||
LD HL,(NAME_S)
|
||||
LD BC,16
|
||||
ADD HL,BC
|
||||
LD (NAME_S),HL
|
||||
RET
|
||||
|
||||
SWITCH_X:
|
||||
LD HL,NAME1
|
||||
LD (NAME_S),HL
|
||||
JR SWITCH_SND
|
||||
|
||||
FILE_DATA:
|
||||
DW 0 ; ç «ìë© ª« áâ¥à
|
||||
DW 0,0 ; ¤«¨ ä ©«
|
||||
|
||||
DW 0 ; ⥪ã騩 ª« áâ¥à
|
||||
DW 0,0 ; ⥪ã饥 ¯®«®¦¥¨¥ ¢ ä ©«¥
|
||||
DW 0 ; ⥪ã騩 ®¬¥à ᥪâ®à ¢ ª« áâ¥à¥
|
||||
;
|
||||
OPEN_FILE: ; DE - name
|
||||
CALL FIND_FILE
|
||||
RET C
|
||||
|
||||
LD C,SLOT3
|
||||
IN B,(C)
|
||||
|
||||
PUSH BC
|
||||
LD A,(CatPage)
|
||||
OUT (C),A
|
||||
LD BC,26
|
||||
ADD HL,BC
|
||||
LD DE,FILE_DATA
|
||||
LD BC,6
|
||||
LDIR
|
||||
|
||||
POP BC
|
||||
OUT (C),B
|
||||
|
||||
LD HL,(FILE_DATA)
|
||||
LD (FILE_DATA+6),HL
|
||||
LD HL,0
|
||||
LD (FILE_DATA+8),HL
|
||||
LD (FILE_DATA+10),HL
|
||||
LD (FILE_DATA+12),HL
|
||||
|
||||
LD IX,(FILE_DATA) ; ®¬¥à ¯¥à¢®£® ª« áâ¥à
|
||||
DEC IX
|
||||
DEC IX ; -2 !!!
|
||||
LD HL,0
|
||||
SCF
|
||||
LD DE,(MSD_DATS+13) ; ¤«¨ ª« áâ¥à ¢ ¡ ©â å
|
||||
RR D
|
||||
RR E
|
||||
SEC_MUL:
|
||||
RR D
|
||||
RR E
|
||||
JR C,SECT_X
|
||||
ADD IX,IX
|
||||
ADC HL,HL
|
||||
JR SEC_MUL
|
||||
|
||||
SECT_X:
|
||||
LD DE,(MSD_DATS+8)
|
||||
ADD IX,DE
|
||||
LD DE,(MSD_DATS+10)
|
||||
ADC HL,DE ; HL:IX - ®¬¥à ¯¥à¢®£® ᥪâ®à ä ©«
|
||||
|
||||
AND A
|
||||
RET
|
||||
;
|
||||
;DE - name - 11 ᨬ¢®«®¢
|
||||
FIND_FILE:
|
||||
;
|
||||
LD C,SLOT3
|
||||
IN B,(C)
|
||||
PUSH BC
|
||||
|
||||
LD A,(CatPage)
|
||||
OUT (C),A
|
||||
|
||||
LD HL,#C000
|
||||
|
||||
NEXT_LOOP:
|
||||
LD B,11
|
||||
PUSH DE
|
||||
|
||||
NAME_LOOP:
|
||||
LD A,(DE)
|
||||
CP (HL)
|
||||
JR NZ,NEXT_NAME
|
||||
INC HL
|
||||
INC DE
|
||||
DJNZ NAME_LOOP
|
||||
|
||||
POP DE
|
||||
LD A,L
|
||||
AND #E0
|
||||
LD L,A
|
||||
|
||||
POP BC
|
||||
OUT (C),B
|
||||
AND A
|
||||
RET ; HL - ¤ ë¥ ä ©« ¢ áâà ¨æ¥ 6
|
||||
|
||||
NEXT_NAME:
|
||||
POP DE
|
||||
LD A,L
|
||||
AND #E0
|
||||
LD L,A
|
||||
LD BC,#20
|
||||
ADD HL,BC
|
||||
LD A,(HL)
|
||||
AND A
|
||||
JR Z,END_CAT
|
||||
LD A,H
|
||||
AND A
|
||||
JR NZ,NEXT_LOOP
|
||||
|
||||
END_CAT:
|
||||
POP BC
|
||||
OUT (C),B
|
||||
SCF
|
||||
RET
|
||||
|
||||
HDD_FN:
|
||||
EX AF,AF'
|
||||
IN A,(FastRAM.OFF)
|
||||
IN A,(SLOT1)
|
||||
PUSH AF
|
||||
IN A,(SLOT3)
|
||||
PUSH AF
|
||||
LD A,5 ;!FIXIT
|
||||
OUT (SLOT1),A
|
||||
DOOM2_SndPage+1:
|
||||
LD A,0
|
||||
OUT (SLOT3),A
|
||||
|
||||
IN A,(PORT_Y)
|
||||
PUSH AF
|
||||
EX AF,AF'
|
||||
|
||||
RST ToBIOS ; ç¨â âì ᥪâ®à á ¢¨ç¥áâ¥à , äãªæ¨ï #45
|
||||
;DI
|
||||
|
||||
POP AF
|
||||
OUT (PORT_Y),A
|
||||
POP AF
|
||||
OUT (SLOT3),A
|
||||
POP AF
|
||||
OUT (SLOT1),A
|
||||
IN A,(FastRAM.ON) ; ¢ª«îç ¥¬ ªíè
|
||||
RET
|
||||
;
|
||||
;
|
||||
BPB_SetUp:
|
||||
LD A,SYS_PAGE
|
||||
LD HL,SYS_PAGE.MS_BPB
|
||||
LD C,BIOS.HDD_READ_BPB
|
||||
RST ToBIOS
|
||||
.PARAMS:
|
||||
DI
|
||||
IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD A,(SYS_PAGE.MS_BPB+FORM_CODE)
|
||||
CP #F0
|
||||
JP C,.ERROR_BPB
|
||||
|
||||
LD HL,SYS_PAGE.MS_BPB+FAT_ID
|
||||
LD DE,.FAT1_MSG
|
||||
LD B,4
|
||||
.L1: LD A,(DE)
|
||||
CP ' '
|
||||
JR NZ,.L11
|
||||
INC DE
|
||||
JR .L1
|
||||
.L11: CP (HL)
|
||||
JR NZ,.PC_DOS
|
||||
|
||||
INC HL
|
||||
INC DE
|
||||
DJNZ .L1
|
||||
LD A,(HL)
|
||||
CP '6'
|
||||
LD HL,#81FF ; FAT16 ä« £
|
||||
JR Z,.FAT
|
||||
CP '2'
|
||||
JP NZ,.ERROR_BPB
|
||||
|
||||
.PC_DOS:
|
||||
LD HL,#01FF ; FAT12 ä« £
|
||||
.FAT: LD (SYS_PAGE.FAT_FLAG),HL
|
||||
|
||||
LD A,(SYS_PAGE.MS_BPB+S_P_T) ; Š®«¨ç¥á⢮ ᥪâ®à®¢ â४
|
||||
LD (SYS_PAGE.MSD_SECS),A
|
||||
|
||||
BIT 7,H
|
||||
|
||||
LD IX,0
|
||||
LD HL,0 ; ¢ëç¨á«¨âì ç «ìë© á¥ªâ®à FAT
|
||||
|
||||
JR Z,.NO_LD_SPECIAL
|
||||
LD IX,(SYS_PAGE.MS_BPB+SPECIAL_SECS)
|
||||
LD HL,(SYS_PAGE.MS_BPB+SPECIAL_SECS+2)
|
||||
.NO_LD_SPECIAL:
|
||||
LD BC,0
|
||||
LD DE,(SYS_PAGE.MS_BPB+RESERV_SECS)
|
||||
|
||||
ADD IX,DE
|
||||
ADC HL,BC
|
||||
|
||||
LD (SYS_PAGE.MSD_FAT_SEC),IX ; ç «ìë© á¥ªâ®à FAT
|
||||
LD (SYS_PAGE.MSD_FAT_SEC2),HL ; ç «ìë© á¥ªâ®à FAT
|
||||
|
||||
LD DE,(SYS_PAGE.MS_BPB+S_P_F) ; ç¨á«® ᥪâ®à®¢ ¢ FAT
|
||||
LD BC,0
|
||||
|
||||
LD A,(SYS_PAGE.MS_BPB+FATS_NUM) ; ª®«¨ç¥á⢮ FATs
|
||||
.NEXT_ADD:
|
||||
ADD IX,DE
|
||||
ADC HL,BC
|
||||
DEC A
|
||||
JR NZ,.NEXT_ADD
|
||||
|
||||
LD (SYS_PAGE.MSD_CAT_SEC),IX ; ç «ìë© á¥ªâ®à DIR
|
||||
LD (SYS_PAGE.MSD_CAT_SEC2),HL ; ç «ìë© á¥ªâ®à DIR
|
||||
|
||||
LD BC,(SYS_PAGE.MS_BPB+SEC_SIZE) ; <20> §¬¥à ᥪâ®à
|
||||
RL C
|
||||
RL B
|
||||
RL C
|
||||
RL B
|
||||
RL C
|
||||
RL B
|
||||
LD C,B
|
||||
LD B,0 ; BC - ç¨á«® ä ©«®¢ëå § ¯¨á¥© ¢ ᥪâ®à¥
|
||||
LD A,C
|
||||
LD (SYS_PAGE.F_P_S),A
|
||||
|
||||
LD DE,(SYS_PAGE.MS_BPB+FLS_NUM) ; —¨á«® ä ©«®¢ëå § ¯¨á¥©
|
||||
|
||||
EX DE,HL
|
||||
DEC HL
|
||||
XOR A
|
||||
.NEXT_ADD2:
|
||||
INC A
|
||||
JR Z,.ERROR_BPB
|
||||
SBC HL,BC
|
||||
JR NC,.NEXT_ADD2
|
||||
EX DE,HL
|
||||
|
||||
LD E,A ; A - ç¨á«® ᥪâ®à®¢ ¢ DIR
|
||||
LD D,0
|
||||
LD BC,0
|
||||
LD (SYS_PAGE.S_P_C),A
|
||||
|
||||
ADD IX,DE ; <20> ç «® DATA area
|
||||
ADC HL,BC
|
||||
|
||||
LD (SYS_PAGE.MSD_DAT_SEC),IX
|
||||
LD (SYS_PAGE.MSD_DAT_SEC2),HL
|
||||
|
||||
LD BC,(SYS_PAGE.MS_BPB+SEC_SIZE) ; <20> §¬¥à ᥪâ®à
|
||||
LD HL,0
|
||||
LD A,(SYS_PAGE.MS_BPB+CLAST_SIZE)
|
||||
LD D,A
|
||||
LD A,0
|
||||
.NEXT_ADD3:
|
||||
ADD HL,BC ; ‚ëç¨á«¥¨¥ ¤«¨ë ª« áâ¥à
|
||||
ADC A,0
|
||||
DEC D
|
||||
JR NZ,.NEXT_ADD3
|
||||
|
||||
LD (SYS_PAGE.CLASTER_LEN),HL
|
||||
LD B,0
|
||||
LD C,A
|
||||
LD (SYS_PAGE.CLASTER_LEN2),BC
|
||||
|
||||
LD HL,0
|
||||
LD BC,(SYS_PAGE.MS_BPB+S_P_T)
|
||||
LD A,(SYS_PAGE.MS_BPB+H_P_S)
|
||||
.BPB_L1:; ‚›—ˆ‘‹ˆ’œ ŠŽ‹ˆ—…‘’‚Ž ‘…Š’Ž<E28099>Ž‚ <20>€ –ˆ‹ˆ<E280B9>„<EFBFBD>
|
||||
ADD HL,BC
|
||||
DEC A
|
||||
JR NZ,.BPB_L1
|
||||
LD (SYS_PAGE.S_X_H),HL
|
||||
;
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
EI
|
||||
AND A
|
||||
RET
|
||||
.ERROR_BPB:
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
SCF
|
||||
EI
|
||||
RET
|
||||
;
|
||||
.FAT1_MSG:
|
||||
DB 'FAT1'
|
||||
@ -1 +1 @@
|
||||
Subproject commit b5606d6db7c0eecf2e3b3da53040af2432a40569
|
||||
Subproject commit f74ae7e760de5541ee4966d509442c6421225c3b
|
||||
Loading…
Reference in New Issue
Block a user