mirror of
https://github.com/Tolik-Trek/Spectrum.EXE.git
synced 2026-06-15 00:51:36 +03:00
починил имя диска для SCL
This commit is contained in:
parent
de06a51d05
commit
4acaf55877
@ -1 +1 @@
|
|||||||
Subproject commit 68e156a69e848e7b01656cdf67122022999d75ee
|
Subproject commit a0e68ce3a19bd47537585e49bfbf5e45fab197a1
|
||||||
@ -1,71 +0,0 @@
|
|||||||
; Œ ªà®áë ªá¥«¥à â®à ¤«ï ªà á®âë))
|
|
||||||
|
|
||||||
;--------[¢ëª«îç¨âì ªá¥«¥à â®à]--------
|
|
||||||
MACRO ACC_Off
|
|
||||||
ld b,b
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;---------[०¨¬ ¯à¨¥¬ ¡ ©â ]----------
|
|
||||||
MACRO ACC_SetBlockSize
|
|
||||||
ld d,d
|
|
||||||
; ¢ª«îç ¥â ªá¥«¥à â®à ¢ ०¨¬ ¯à¨¥¬
|
|
||||||
; ¡ ©â à §¬¥à ¡«®ª ¤ «¥¥ á«¥¤ã¥â
|
|
||||||
; ª®¬ ¤ ⨯ LD A,dat, £¤¥ dat ¨ ¡ã¤¥â
|
|
||||||
; ®¢ë¬ à §¬¥à®¬ ¡«®ª . …᫨ à §¬¥à
|
|
||||||
; ¡«®ª ¡ë« ãáâ ®¢«¥ à ¥¥, ¥£® ¬®¦®
|
|
||||||
; ¥ ãáâ ¢«¨¢ âì.
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;-------[§ ¯®«¥¨¥ ®¤¨¬ ¡ ©â®¬]-------
|
|
||||||
MACRO ACC_FillOneByte
|
|
||||||
ld c,c
|
|
||||||
; ޝ¥à æ¨ï Fill. <20>®á«¥¤ãîé ï ª®¬ ¤
|
|
||||||
; ⨯ LD (HL),A ¯à¨¢¥¤¥â ª § ¯®«¥¨î
|
|
||||||
; 㪠§ ®£® à ¥¥ ª®«¨ç¥á⢠¡ ©â
|
|
||||||
; § 票¥¬ A
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;----[§ ¯®«¥¨¥ ¢¥à⨪ «ìëå «¨¨©]----
|
|
||||||
;ޝ¥à æ¨ï Fill ¤«ï £à ä¨ç¥áª®£® íªà .
|
|
||||||
MACRO ACC_FillScreenOneByte
|
|
||||||
ld e,e
|
|
||||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD (HL),A
|
|
||||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î § 票¥¬ A
|
|
||||||
; ¢¥à⨪ «ìëå «¨¨© íªà 㪠§ ë¬
|
|
||||||
; à ¥¥ ª®«¨ç¥á⢮¬ ¡ ©â
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;----------[ª®¯¨à®¢ ¨¥ ¡«®ª ]----------
|
|
||||||
MACRO ACC_CopyBlock
|
|
||||||
ld l,l
|
|
||||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD A,(HL)
|
|
||||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î އ“ ªá¥«¥à â®à
|
|
||||||
; ¤ 묨 ¨§ ¤à¥á (HL), ª®¬ ¤ ⨯
|
|
||||||
; LD (DE),A ¯à¨¢¥¤¥â ª ¯¥à¥§ ¯¨á¨ ¤ ëå
|
|
||||||
; ¨§ އ“ ªá¥«¥à â®à ¢ ®á®¢®¥ ¨«¨
|
|
||||||
; ¢¨¤¥®-އ“.
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;---[ª®¯¨à®¢ ¨¥ £à ä¨ç¥áª®£® ¡«®ª ]----
|
|
||||||
MACRO ACC_CopyScreenBlock
|
|
||||||
ld a,a
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¡«®ª ¤«ï £à ä. íªà .
|
|
||||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD A,(HL)
|
|
||||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î އ“ ªá¥«¥à â®à
|
|
||||||
; ¤ 묨 ¨§ ¤à¥á (HL), ª®¬ ¤ ⨯
|
|
||||||
; LD (DE),A ¯à¨¢¥¤¥â ª ¯¥à¥§ ¯¨á¨ ¤ ëå
|
|
||||||
; ¨§ އ“ ªá¥«¥à â®à ¢ ¢¨¤¥®-އ“
|
|
||||||
; ¢¥à⨪ «ì묨 «¨¨ï¬¨.
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;--------------[Reserved]---------------
|
|
||||||
MACRO ACC_Reserved
|
|
||||||
LD H,H
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
@ -1,71 +0,0 @@
|
|||||||
; Œ ªà®áë ªá¥«¥à â®à ¤«ï ªà á®âë))
|
|
||||||
|
|
||||||
;--------[¢ëª«îç¨âì ªá¥«¥à â®à]--------
|
|
||||||
MACRO ACC_Off
|
|
||||||
ld b,b
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;---------[०¨¬ ¯à¨¥¬ ¡ ©â ]----------
|
|
||||||
MACRO ACC_SetBlockSize
|
|
||||||
ld d,d
|
|
||||||
; ¢ª«îç ¥â ªá¥«¥à â®à ¢ ०¨¬ ¯à¨¥¬
|
|
||||||
; ¡ ©â à §¬¥à ¡«®ª ¤ «¥¥ á«¥¤ã¥â
|
|
||||||
; ª®¬ ¤ ⨯ LD A,dat, £¤¥ dat ¨ ¡ã¤¥â
|
|
||||||
; ®¢ë¬ à §¬¥à®¬ ¡«®ª . …᫨ à §¬¥à
|
|
||||||
; ¡«®ª ¡ë« ãáâ ®¢«¥ à ¥¥, ¥£® ¬®¦®
|
|
||||||
; ¥ ãáâ ¢«¨¢ âì.
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;-------[§ ¯®«¥¨¥ ®¤¨¬ ¡ ©â®¬]-------
|
|
||||||
MACRO ACC_FillOneByte
|
|
||||||
ld c,c
|
|
||||||
; ޝ¥à æ¨ï Fill. <20>®á«¥¤ãîé ï ª®¬ ¤
|
|
||||||
; ⨯ LD (HL),A ¯à¨¢¥¤¥â ª § ¯®«¥¨î
|
|
||||||
; 㪠§ ®£® à ¥¥ ª®«¨ç¥á⢠¡ ©â
|
|
||||||
; § 票¥¬ A
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;----[§ ¯®«¥¨¥ ¢¥à⨪ «ìëå «¨¨©]----
|
|
||||||
;ޝ¥à æ¨ï Fill ¤«ï £à ä¨ç¥áª®£® íªà .
|
|
||||||
MACRO ACC_FillScreenOneByte
|
|
||||||
ld e,e
|
|
||||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD (HL),A
|
|
||||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î § 票¥¬ A
|
|
||||||
; ¢¥à⨪ «ìëå «¨¨© íªà 㪠§ ë¬
|
|
||||||
; à ¥¥ ª®«¨ç¥á⢮¬ ¡ ©â
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;----------[ª®¯¨à®¢ ¨¥ ¡«®ª ]----------
|
|
||||||
MACRO ACC_CopyBlock
|
|
||||||
ld l,l
|
|
||||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD A,(HL)
|
|
||||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î އ“ ªá¥«¥à â®à
|
|
||||||
; ¤ 묨 ¨§ ¤à¥á (HL), ª®¬ ¤ ⨯
|
|
||||||
; LD (DE),A ¯à¨¢¥¤¥â ª ¯¥à¥§ ¯¨á¨ ¤ ëå
|
|
||||||
; ¨§ އ“ ªá¥«¥à â®à ¢ ®á®¢®¥ ¨«¨
|
|
||||||
; ¢¨¤¥®-އ“.
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;---[ª®¯¨à®¢ ¨¥ £à ä¨ç¥áª®£® ¡«®ª ]----
|
|
||||||
MACRO ACC_CopyScreenBlock
|
|
||||||
ld a,a
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¡«®ª ¤«ï £à ä. íªà .
|
|
||||||
; <20>®á«¥¤ãîé ï ª®¬ ¤ ⨯ LD A,(HL)
|
|
||||||
; ¯à¨¢¥¤¥â ª § ¯®«¥¨î އ“ ªá¥«¥à â®à
|
|
||||||
; ¤ 묨 ¨§ ¤à¥á (HL), ª®¬ ¤ ⨯
|
|
||||||
; LD (DE),A ¯à¨¢¥¤¥â ª ¯¥à¥§ ¯¨á¨ ¤ ëå
|
|
||||||
; ¨§ އ“ ªá¥«¥à â®à ¢ ¢¨¤¥®-އ“
|
|
||||||
; ¢¥à⨪ «ì묨 «¨¨ï¬¨.
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;--------------[Reserved]---------------
|
|
||||||
MACRO ACC_Reserved
|
|
||||||
LD H,H
|
|
||||||
ENDM
|
|
||||||
;---------------------------------------
|
|
||||||
@ -1,73 +0,0 @@
|
|||||||
;
|
|
||||||
MACRO FRAM_ON
|
|
||||||
IN A,(FastRAM_ON)
|
|
||||||
IF Emulator
|
|
||||||
PUSH BC
|
|
||||||
PUSH AF
|
|
||||||
LD BC,#1FFD
|
|
||||||
XOR A
|
|
||||||
OUT (C),A
|
|
||||||
OUT (FastRam_BANK0),A
|
|
||||||
POP AF
|
|
||||||
POP BC
|
|
||||||
ENDIF
|
|
||||||
ENDM
|
|
||||||
|
|
||||||
MACRO FRAM_OFF
|
|
||||||
IN A,(FastRAM_OFF)
|
|
||||||
IF Emulator
|
|
||||||
PUSH BC
|
|
||||||
PUSH AF
|
|
||||||
LD BC,#1FFD
|
|
||||||
LD A,1
|
|
||||||
OUT (C),A
|
|
||||||
XOR A
|
|
||||||
OUT (FastRam_BANK0),A
|
|
||||||
POP AF
|
|
||||||
POP BC
|
|
||||||
ENDIF
|
|
||||||
ENDM
|
|
||||||
;
|
|
||||||
;
|
|
||||||
MACRO PrintProc
|
|
||||||
|
|
||||||
MODULE PrintF
|
|
||||||
;---------------------------------------
|
|
||||||
printstr:
|
|
||||||
; ¢ ॣ. HL ¤à¥á ¯¥ç â ¥¬ë© ¡ãä¥à
|
|
||||||
LD C,Dss.PChars
|
|
||||||
jp ToDSS
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;---------------------------------------
|
|
||||||
; ¢ ॣ. A ç¨á«® ¯¥ç â ¥¬®¥ ª ª hex
|
|
||||||
printhex:
|
|
||||||
LD D,A
|
|
||||||
RRCA
|
|
||||||
RRCA
|
|
||||||
RRCA
|
|
||||||
RRCA
|
|
||||||
AND #0F
|
|
||||||
ADD A,#30
|
|
||||||
CP #3A
|
|
||||||
JR C,.PRNH1
|
|
||||||
ADD A,7
|
|
||||||
.PRNH1:
|
|
||||||
CALL .PRINT_CHAR
|
|
||||||
LD A,D
|
|
||||||
AND #0F
|
|
||||||
ADD A,#30
|
|
||||||
CP #3A
|
|
||||||
JP C,.PRINT_CHAR
|
|
||||||
ADD A,7
|
|
||||||
JP .PRINT_CHAR
|
|
||||||
; ¢ ॣ¨áâॠA ᨬ¢®« ¤«ï ¯¥ç â¨
|
|
||||||
.PRINT_CHAR:
|
|
||||||
LD BC,#0182
|
|
||||||
JP ToBIOS
|
|
||||||
;---------------------------------------
|
|
||||||
ENDMODULE
|
|
||||||
|
|
||||||
ENDM
|
|
||||||
;
|
|
||||||
;
|
|
||||||
@ -1,73 +0,0 @@
|
|||||||
;
|
|
||||||
MACRO FRAM_ON
|
|
||||||
IN A,(FastRAM_ON)
|
|
||||||
IF Emulator
|
|
||||||
PUSH BC
|
|
||||||
PUSH AF
|
|
||||||
LD BC,#1FFD
|
|
||||||
XOR A
|
|
||||||
OUT (C),A
|
|
||||||
OUT (FastRam_BANK0),A
|
|
||||||
POP AF
|
|
||||||
POP BC
|
|
||||||
ENDIF
|
|
||||||
ENDM
|
|
||||||
|
|
||||||
MACRO FRAM_OFF
|
|
||||||
IN A,(FastRAM_OFF)
|
|
||||||
IF Emulator
|
|
||||||
PUSH BC
|
|
||||||
PUSH AF
|
|
||||||
LD BC,#1FFD
|
|
||||||
LD A,1
|
|
||||||
OUT (C),A
|
|
||||||
XOR A
|
|
||||||
OUT (FastRam_BANK0),A
|
|
||||||
POP AF
|
|
||||||
POP BC
|
|
||||||
ENDIF
|
|
||||||
ENDM
|
|
||||||
;
|
|
||||||
;
|
|
||||||
MACRO PrintProc
|
|
||||||
|
|
||||||
MODULE PrintF
|
|
||||||
;---------------------------------------
|
|
||||||
printstr:
|
|
||||||
; ¢ ॣ. HL ¤à¥á ¯¥ç â ¥¬ë© ¡ãä¥à
|
|
||||||
LD C,Dss.PChars
|
|
||||||
jp ToDSS
|
|
||||||
;---------------------------------------
|
|
||||||
|
|
||||||
;---------------------------------------
|
|
||||||
; ¢ ॣ. A ç¨á«® ¯¥ç â ¥¬®¥ ª ª hex
|
|
||||||
printhex:
|
|
||||||
LD D,A
|
|
||||||
RRCA
|
|
||||||
RRCA
|
|
||||||
RRCA
|
|
||||||
RRCA
|
|
||||||
AND #0F
|
|
||||||
ADD A,#30
|
|
||||||
CP #3A
|
|
||||||
JR C,.PRNH1
|
|
||||||
ADD A,7
|
|
||||||
.PRNH1:
|
|
||||||
CALL .PRINT_CHAR
|
|
||||||
LD A,D
|
|
||||||
AND #0F
|
|
||||||
ADD A,#30
|
|
||||||
CP #3A
|
|
||||||
JP C,.PRINT_CHAR
|
|
||||||
ADD A,7
|
|
||||||
JP .PRINT_CHAR
|
|
||||||
; ¢ ॣ¨áâॠA ᨬ¢®« ¤«ï ¯¥ç â¨
|
|
||||||
.PRINT_CHAR:
|
|
||||||
LD BC,#0182
|
|
||||||
JP ToBIOS
|
|
||||||
;---------------------------------------
|
|
||||||
ENDMODULE
|
|
||||||
|
|
||||||
ENDM
|
|
||||||
;
|
|
||||||
;
|
|
||||||
15
spectrum.asm
15
spectrum.asm
@ -371,6 +371,7 @@ READ_IMAGE: LD DE,ONE_FILE
|
|||||||
CPDR
|
CPDR
|
||||||
INC HL
|
INC HL
|
||||||
LD (HL),0
|
LD (HL),0
|
||||||
|
PUSH HL
|
||||||
; ãáâ ¢«¨¢ ¥¬ ¨ ¨¨â¨¬ ¢¨â
|
; ãáâ ¢«¨¢ ¥¬ ¨ ¨¨â¨¬ ¢¨â
|
||||||
; LD A,SYS_PORT.BIOS
|
; LD A,SYS_PORT.BIOS
|
||||||
; OUT (SYS_PORT.ROM),A
|
; OUT (SYS_PORT.ROM),A
|
||||||
@ -381,6 +382,8 @@ READ_IMAGE: LD DE,ONE_FILE
|
|||||||
CALL BPB_SetUp
|
CALL BPB_SetUp
|
||||||
; § ¯®¬¨ ¥¬ ᥪâ®à ¤¨à¥ªâ®à¨¨
|
; § ¯®¬¨ ¥¬ ᥪâ®à ¤¨à¥ªâ®à¨¨
|
||||||
CALL SET_IMAGE_DIR_SECTOR
|
CALL SET_IMAGE_DIR_SECTOR
|
||||||
|
POP HL
|
||||||
|
LD (HL),'\' ;
|
||||||
;;;;;;;;;
|
;;;;;;;;;
|
||||||
;
|
;
|
||||||
.no_change_Disk:;
|
.no_change_Disk:;
|
||||||
@ -799,7 +802,7 @@ RESET_TO_ZX: DI
|
|||||||
LD (SYS_PAGE.CURRENT_DIR_DRIVE),A
|
LD (SYS_PAGE.CURRENT_DIR_DRIVE),A
|
||||||
LD (SYS_PAGE.CURRENT_DIR_DRIVE_COPY),A
|
LD (SYS_PAGE.CURRENT_DIR_DRIVE_COPY),A
|
||||||
;!TODO ¢ BIOS?
|
;!TODO ¢ BIOS?
|
||||||
LD BC,CBL.SYS_PORT
|
LD BC,SP_SND.CBL.SYS_PORT
|
||||||
XOR A
|
XOR A
|
||||||
OUT (C),A ; CBL-off
|
OUT (C),A ; CBL-off
|
||||||
;
|
;
|
||||||
@ -1593,15 +1596,19 @@ CNF_FILE: DB "SPECTRUM.CFG",0
|
|||||||
;USER_CURRENT_DIR EQU $
|
;USER_CURRENT_DIR EQU $
|
||||||
;SPECTRUM_HOME_DIR EQU USER_CURRENT_DIR + 256
|
;SPECTRUM_HOME_DIR EQU USER_CURRENT_DIR + 256
|
||||||
;
|
;
|
||||||
|
;---------------------------------------------------------------------[]
|
||||||
ONE_FILE: WORD 0
|
ONE_FILE: WORD 0
|
||||||
.Size EQU 256
|
.Size EQU 256
|
||||||
TMP_BUFF EQU ONE_FILE + ONE_FILE.Size
|
TMP_BUFF EQU ONE_FILE + ONE_FILE.Size
|
||||||
.Size EQU 256
|
.Size EQU 256
|
||||||
|
SCL_Buffer EQU TMP_BUFF + TMP_BUFF.Size
|
||||||
|
.Size EQU #701
|
||||||
;
|
;
|
||||||
PlaceForPalette EQU TMP_BUFF + TMP_BUFF.Size ;#A000
|
PlaceForPalette EQU SCL_Buffer + SCL_Buffer.Size
|
||||||
PlaceForTXTscreen EQU PlaceForPalette + 1024*4 ;!HARDCODE
|
.Size EQU 1024*4
|
||||||
|
PlaceForTXTscreen EQU PlaceForPalette + PlaceForPalette.Size
|
||||||
|
|
||||||
|
ASSERT $<#A000,"Buffer out of mem bank 2"
|
||||||
|
|
||||||
STACK_CHECK_MACRO stack_point,stack_buffer
|
STACK_CHECK_MACRO stack_point,stack_buffer
|
||||||
; Code after Loader
|
; Code after Loader
|
||||||
|
|||||||
@ -320,9 +320,6 @@ SYS_SECTOR SEEK
|
|||||||
SYS_SECTOR_END: BLOCK 3,0
|
SYS_SECTOR_END: BLOCK 3,0
|
||||||
|
|
||||||
SCL_FILE_ID: DB 0
|
SCL_FILE_ID: DB 0
|
||||||
;-----------[¢ á ¬ë© ª®¥æ]-------------
|
; ;-----------[¢ á ¬ë© ª®¥æ]-------------
|
||||||
SCL_Buffer EQU $
|
; SCL_Buffer EQU $
|
||||||
ASSERT SCL_Buffer+#701<#A000,"Buffer out of mem bank 2"
|
; ASSERT SCL_Buffer+#701<#A000,"Buffer out of mem bank 2"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user