mirror of
https://github.com/Tolik-Trek/Spectrum.EXE.git
synced 2026-06-15 00:51:36 +03:00
beta support "free zx pages" mode
This commit is contained in:
parent
9f78d202ae
commit
61f85bce5e
@ -71,9 +71,9 @@ SET_CURRENT_HDD:
|
||||
.NUMBER+1: LD A,#FF
|
||||
CP #FF
|
||||
LD C,BIOS.HDD_INIT
|
||||
JP Z,ToBIOS_18
|
||||
JP Z,ToBIOS
|
||||
LD C,BIOS.HDD_PART ; IDE-1/IDE-2
|
||||
JP ToBIOS_18
|
||||
JP ToBIOS
|
||||
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-;
|
||||
|
||||
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-;
|
||||
|
||||
90
spectrum.asm
90
spectrum.asm
@ -191,10 +191,10 @@ BEGIN: LD (LINE_X),IX
|
||||
AND A
|
||||
LD HL,MSG_EXIT1
|
||||
JP Z,EXIT_ALL
|
||||
;
|
||||
; £à㧨¬ ¯ «¨âàã ¨ ®¡à § ¤¨áª , ¥á«¨ ¤®
|
||||
CALL LOAD_IMAGE_FILE
|
||||
CALL LOADING_PALETTE
|
||||
CALL SHOW_MESSAGE_OK_CFG_NAME
|
||||
JP PREPARE_TO_ZXMODE
|
||||
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ;
|
||||
|
||||
@ -216,7 +216,15 @@ ERROR_FILE: LD HL,ERROR_FILE_MSG_X
|
||||
.prn_msg: LD C,Dss.PChars
|
||||
RST ToDSS
|
||||
;
|
||||
LD HL,ERROR_FILE_MSG
|
||||
LD A,(vROM_LOAD_BIN.need_free)
|
||||
OR A
|
||||
JR Z,.skip_free
|
||||
;
|
||||
LD A,(ZX_vROM_BLK)
|
||||
LD C,BIOS.FreeMem
|
||||
RST ToBIOS
|
||||
;
|
||||
.skip_free: LD HL,ERROR_FILE_MSG
|
||||
JR EXIT_ALL
|
||||
ERROR_ZX_FLAG: LD HL,MSG_NO_ZX_FLAG
|
||||
JR EXIT_ALL
|
||||
@ -325,11 +333,11 @@ READ_IMAGE: LD DE,ONE_FILE
|
||||
INC HL
|
||||
LD (HL),0
|
||||
; ãáâ ¢«¨¢ ¥¬ ¨ ¨¨â¨¬ ¢¨â
|
||||
LD A,SYS_PORT.BIOS
|
||||
OUT (SYS_PORT.ROM),A
|
||||
; LD A,SYS_PORT.BIOS
|
||||
; OUT (SYS_PORT.ROM),A
|
||||
CALL SET_CURRENT_HDD
|
||||
LD A,SYS_PORT.BIOS
|
||||
OUT (SYS_PORT.RAM),A
|
||||
; LD A,SYS_PORT.BIOS
|
||||
; OUT (SYS_PORT.RAM),A
|
||||
; ¯ àᨬ ¤«ï à áçñ⮢ BPB
|
||||
CALL BPB_SetUp
|
||||
; § ¯®¬¨ ¥¬ ᥪâ®à ¤¨à¥ªâ®à¨¨
|
||||
@ -549,7 +557,7 @@ EXIT_TO_DSS: DI
|
||||
AND A
|
||||
JR NZ,.next
|
||||
; ®ç¨áâª à ¬¤¨áª®¢
|
||||
LD BC,SYS_PAGE.RAMD_KEYS.NUM*256 + BIOS.FreeMemRMD
|
||||
LD BC,256*SYS_PAGE.RAMD_KEYS.NUM + BIOS.FreeMemRMD
|
||||
.loop: PUSH BC
|
||||
LD A,B
|
||||
DEC A
|
||||
@ -741,7 +749,7 @@ RESET_TO_ZX: DI
|
||||
;
|
||||
LD A,(PARAMS.LD_Pal+2)
|
||||
INC A
|
||||
JR NZ,Skip_Load_Pallete
|
||||
JR NZ,Skip_Load_Palette
|
||||
;
|
||||
LD HL,PlaceForPalette + 0
|
||||
LD A,4
|
||||
@ -759,9 +767,9 @@ RESET_TO_ZX: DI
|
||||
LD A,7
|
||||
CALL SET_PAL
|
||||
;
|
||||
LD A,%0000'0100 ; set custom palette
|
||||
EX AF,AF'
|
||||
OR %0000'0100 ; set custom palette
|
||||
Skip_Load_Pallete:
|
||||
Skip_Load_Palette:
|
||||
EX AF,AF'
|
||||
LD HL,(PARAMS.Int_sc+2)
|
||||
ADD A,L
|
||||
@ -809,7 +817,7 @@ Set_Next_Par: ; SYS_PORT/CNF_PORT
|
||||
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
|
||||
SET_PAL: LD DE,0
|
||||
LD BC,#FF*256 + BIOS.PIC_SET_PAL
|
||||
JP ToBIOS_18
|
||||
JP ToBIOS
|
||||
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
|
||||
|
||||
|
||||
@ -997,7 +1005,10 @@ READ_CNF_FILE: LD HL,#C000
|
||||
CALL vROM_LOAD_BIN
|
||||
ENDM
|
||||
;
|
||||
LOAD_vROM_BIN: EXX
|
||||
LOAD_vROM_BIN: LD A,#FF
|
||||
LD (vROM_LOAD_BIN.need_free),A
|
||||
;
|
||||
EXX
|
||||
LD HL,BUFFER_vROM_PAGES.Pages
|
||||
EXX
|
||||
LD HL,BUFFER_RAM_PAGES
|
||||
@ -1016,7 +1027,9 @@ LOAD_vROM_BIN: EXX
|
||||
LD (HL),A
|
||||
LD BC,BIOS.ZX_MEMORY_MANAGER.SetCustomVroms
|
||||
RST ToBIOS
|
||||
|
||||
;!TODO check error
|
||||
XOR A
|
||||
LD (vROM_LOAD_BIN.need_free),A
|
||||
RET
|
||||
;
|
||||
vROM_LOAD_BIN: EX DE,HL
|
||||
@ -1052,41 +1065,7 @@ vROM_LOAD_BIN: EX DE,HL
|
||||
EXX
|
||||
RET
|
||||
;
|
||||
|
||||
|
||||
;NO_ZX_FLAG: DB 0
|
||||
;
|
||||
; MACRO vROM_LOAD romLine;,pageNumber
|
||||
; .romLine = (romLine-1)*2
|
||||
; EX DE,HL
|
||||
; LD HL,(ADDRESS_LINES+.romLine)
|
||||
; LD A,(HL)
|
||||
; CP ';'
|
||||
; EX DE,HL
|
||||
|
||||
; JR NZ,.go_load
|
||||
|
||||
; LD (HL),0
|
||||
; EX DE,HL
|
||||
; LD A,(NO_ZX_FLAG)
|
||||
; OR A
|
||||
; JR Z,.skip_load
|
||||
; JP ERROR_ZX_FLAG
|
||||
; .go_load:
|
||||
; LD A,(HL) ;BUFFER_RAM_PAGES.ROM
|
||||
; PUSH HL
|
||||
; EX DE,HL
|
||||
; CALL READ_FILE_1
|
||||
; POP DE
|
||||
; ;
|
||||
; LD A,SHARED_PAGE
|
||||
; OUT (SLOT3),A
|
||||
; JP C,ERROR_FILE
|
||||
; .skip_load:
|
||||
; INC DE
|
||||
; EX DE,HL
|
||||
; ENDM
|
||||
;
|
||||
.need_free: DB 0
|
||||
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
|
||||
|
||||
|
||||
@ -1113,11 +1092,14 @@ LOAD_IMAGE_FILE:
|
||||
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
|
||||
;!TEST palette load
|
||||
LOADING_PALETTE:
|
||||
;EX DE,HL
|
||||
LD A,(PARAMS.LD_Pal+2)
|
||||
INC A
|
||||
RET NZ
|
||||
;
|
||||
LD HL,( ADDRESS_LINES + ((CFG_FILE_LINES.PALETTE-1)*2) )
|
||||
LD A,(HL)
|
||||
CP ';'
|
||||
JR Z,.skip
|
||||
RET Z
|
||||
;
|
||||
LD DE,ONE_FILE
|
||||
LD BC,FULL_FILE_NAME_LENGTH
|
||||
@ -1141,8 +1123,12 @@ LOADING_PALETTE:
|
||||
;
|
||||
LD A,(FILE_HANDLE)
|
||||
LD C,Dss.Close
|
||||
RST ToDSS
|
||||
.skip: ;!TODO ¯¥ç â âì ¨¬ï ä ©« ¯ «¨âàë, ¥á«¨ ® § £à㦥
|
||||
JP ToDSS
|
||||
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
|
||||
|
||||
|
||||
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
|
||||
SHOW_MESSAGE_OK_CFG_NAME:
|
||||
; ä ©«ë áç¨â ë
|
||||
LD HL,MSG_NORMAL
|
||||
LD C,Dss.PChars
|
||||
|
||||
Loading…
Reference in New Issue
Block a user