...
This commit is contained in:
		
							parent
							
								
									ee0a29a034
								
							
						
					
					
						commit
						72e8008dd0
					
				| @ -1 +1 @@ | ||||
| Subproject commit a6dee8e17ae12b251f306290793a56a6b0dd5ae3 | ||||
| Subproject commit e7e58e7b816a25137a0a253321164e863bbe782e | ||||
| @ -212,17 +212,20 @@ NMI_Point: | ||||
| ;	BLOCK MEM_MAP.ID_Version-$,0  ;#C0-$,0 | ||||
| ID_Version: | ||||
|  	dw bitstream_ver_hex				; Version of bitstream hex | ||||
| 
 | ||||
| ID_SPRINTER_length: | ||||
| 	DB	ID_SPRINTER.LENGTH | ||||
| 
 | ||||
| ID_SPRINTER: | ||||
| 	DB	'Hardware v' | ||||
| .bitstream_ver:	 | ||||
| 	DB	bitstream_ver_string,0 | ||||
| 	DB	'Sprinter',0 | ||||
| 	DB	0 | ||||
| .LENGTH	EQU $-ID_SPRINTER | ||||
| 		DB	ID_SPRINTER.LENGTH | ||||
| ID_SPRINTER:	; § ¯¨áì 1 | ||||
| 		DB	'Hardware v' | ||||
| .bitstream_ver:	DB	bitstream_ver_string,0 | ||||
| 		; § ¯¨áì 2 | ||||
| 		DB	'Sprinter',0 | ||||
| 		; § ¯¨áì 3 - ¤¢  ¡ ©â  ¤«ï ¢¥àᨨ 稯  Altera | ||||
| 		 ;DW	#FFFF - ¯®¤áâ ¢«ï¥âáï ¢ äãªæ¨¨ FN_VERSION | ||||
| 		; ª®¥æ | ||||
| 		DB	0 | ||||
| 		; | ||||
| .Records_Num	EQU	3 | ||||
| .LENGTH		EQU $-ID_SPRINTER | ||||
| 
 | ||||
| ; Check for max length of string | ||||
| 	ASSERT ID_SPRINTER.LENGTH < #20, 'ERROR! ID String is to long!' | ||||
| @ -350,11 +353,11 @@ EXTINT:	OR	A | ||||
| 	ADD	HL,SP       | ||||
| 	PUSH	HL   | ||||
| 
 | ||||
| 	LD	HL,-.stackDepth - .switchProcedure.size                       ; memory stack use! | ||||
| 	ADD	HL,SP                                                       ; stack | ||||
| 	PUSH	HL                                                         ;  ¤à¥á ¯à®£à ¬¬ë .readProcedure | ||||
| 	LD	HL,-.stackDepth - .switchProcedure.size			; memory stack use! | ||||
| 	ADD	HL,SP							; stack | ||||
| 	PUSH	HL							;  ¤à¥á ¯à®£à ¬¬ë .readProcedure | ||||
| 
 | ||||
| 	LD	DE,.switchProcedure                                          ; ¯¥à¥¥á⨠¯à®£à ¬¬ã   á⥪ | ||||
| 	LD	DE,.switchProcedure					; ¯¥à¥¥á⨠¯à®£à ¬¬ã   á⥪ | ||||
| 	EX	DE,HL | ||||
| 	LD	BC,.switchProcedure.size | ||||
| 	LDIR      | ||||
| @ -814,13 +817,10 @@ Check_EE_Port: | ||||
| 	OUT	(SLOT1),A | ||||
| 	LD	A,(Spec_Page.page_2)					; PAGE2 | ||||
| 	OUT	(SLOT2),A | ||||
| 	LD	A,(Spec_Page.page_3)					; PAGE3 | ||||
| 	OUT	(SLOT3),A | ||||
| 	LD	A,(Spec_Page.Reload_Version) | ||||
| 	CP	#FF | ||||
| 	JR	NZ,.ver_2 | ||||
| 	JP	(HL) | ||||
| 	; | ||||
| 	JR	Z,.JPHL	; olg logic | ||||
| 	; new logic | ||||
| .ver_2:	EXX | ||||
| 	 LD	HL,(Spec_Page.Stack_Point) | ||||
| 	 LD	SP,HL | ||||
| @ -828,11 +828,12 @@ Check_EE_Port: | ||||
| 	AND	A | ||||
| 	LD	A,#FF | ||||
| 	LD	(Spec_Page.Reload_Version),A | ||||
| 	JR	NZ,ver_2_sys_port_on | ||||
| 	LD	A,(Spec_Page.page_3)					; PAGE3 | ||||
| 	OUT	(SLOT3),A | ||||
| 	JR	Z,.JPHL | ||||
| 	PUSH	HL | ||||
| 	JP	EXP_FNS_2_RET | ||||
| ver_2_sys_port_on: | ||||
| 	JP	(HL) | ||||
| .JPHL:	JP	(HL) | ||||
| ; | ||||
| ;--[¯¥à¥å¢ â soft/hard reset #41 page]-- | ||||
| Check_Spec_Page: | ||||
| @ -1277,7 +1278,7 @@ ZX_SPECTRUM_MODE: | ||||
| 
 | ||||
| 	; LD D,#35 | ||||
| 	; CALL CMOS_RD | ||||
| 	; BIT 0,A								; !!!!! | ||||
| 	; BIT 0,A	; !!!!! | ||||
| 
 | ||||
| ;	PUSH AF | ||||
| ;	CALL Z,SPRINTER_1 | ||||
| @ -1335,17 +1336,19 @@ RES128_PROG: | ||||
| 
 | ||||
| 	INC D | ||||
| 	DEC D | ||||
| 	JP Z,0								; 0 ‚•Ž„ ‚ BASIC-128 | ||||
| 	; 0 ‚•Ž„ ‚ BASIC-128 | ||||
| 	JP Z,0 | ||||
| 	; 1 ‚•Ž„ ‚ BASIC-48 | ||||
| 	LD A,#10 | ||||
| 	OUT (C),A | ||||
| 	DEC D | ||||
| 	JP Z,0								; 1 ‚•Ž„ ‚ BASIC-48 | ||||
| 
 | ||||
| 	JP Z,0 | ||||
| 	; 2 ‚•Ž„ ‚ TR-DOS | ||||
| 	LD HL,0 | ||||
| 	PUSH HL | ||||
| 	DEC D | ||||
| 	JP Z,#3D29							; 2 ‚•Ž„ ‚ TR-DOS | ||||
| 
 | ||||
| 	JP Z,#3D29 | ||||
| 	; 3 ‚•Ž„ ‚ EXPANSION | ||||
|         ;!TODO ¯®ª  ¥ à ¡®â ¥â | ||||
| 	 XOR    A | ||||
| 	 OUT    (C),A | ||||
| @ -1353,17 +1356,22 @@ RES128_PROG: | ||||
| 	 LD     B,#1F | ||||
| 	 OUT    (C),A | ||||
| 	 DEC    D | ||||
| 	 JP     Z,0							; 3 ‚•Ž„ ‚ EXPANSION ??? | ||||
| 	 JP     Z,0 | ||||
|         ; | ||||
| 
 | ||||
| 	XOR A | ||||
| 	OUT (C),A | ||||
| 	LD A,#30 | ||||
| 	LD B,#7F | ||||
| 	OUT (C),A | ||||
| 	;!TEST | ||||
| 	 LD	A,CNF_PORT.PENT_RESET + CNF_PORT.SCORP_RESET | ||||
| 	 OUT	(CNF_PORT.OFF),A | ||||
| 	; | ||||
| 	DEC D | ||||
| 	JP Z,#3D29							; 4 ‚•Ž„ ‚ TR-DOS á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨ | ||||
| 	JP 0                                                            ; 5 ‚•Ž„ ‚ BASIC-48 á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨ | ||||
| 	; 4 ‚•Ž„ ‚ TR-DOS á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨ | ||||
| 	JP Z,#3D29 | ||||
| 	; 5 ‚•Ž„ ‚ BASIC-48 á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨					 | ||||
| 	JP 0                                                             | ||||
|  ENT | ||||
| LEN_RES128	EQU $-RES128_PROG | ||||
| ;-----------------------------------------------------------------------; | ||||
| @ -1602,11 +1610,11 @@ DOS_OFF: | ||||
| 	DI | ||||
| 	PUSH	AF | ||||
| 	PUSH	BC | ||||
| 	LD	BC,(#5BFF)                                                   ; !HARDCODE | ||||
| 	LD	BC,(#5BFF)	; !HARDCODE | ||||
| 	LD	A,#C9		; Opcode RET | ||||
| 	LD	(#5BFF),A                                                    ; !HARDCODE | ||||
| 	CALL	#5BFF                                                      ; !HARDCODE | ||||
| 	LD	(#5BFF),BC                                                   ; !HARDCODE | ||||
| 	LD	(#5BFF),A	; !HARDCODE | ||||
| 	CALL	#5BFF		; !HARDCODE | ||||
| 	LD	(#5BFF),BC	; !HARDCODE | ||||
| 	POP	BC | ||||
| 	POP	AF | ||||
| 	JP	PO,.no_EI | ||||
|  | ||||
| @ -778,16 +778,5 @@ SCREEN_TABLES: | ||||
|                 DB   1    :  DW .SCR | ||||
|                 DB   1    :  DW .RES | ||||
|                 DB   0    ; end | ||||
| 
 | ||||
| ; ;!TEST | ||||
| ;.L_ORIGINAL:     DB 32   : DW L_SCR | ||||
| ;                 DB 4    : DW L_SNC | ||||
| ;                 DB 1    : DW L_INT | ||||
| ;                 DB 1    : DW L_SNC | ||||
| ;                 DB 1    : DW L_BLN | ||||
| ;                 DB 1    : DW L_SCR | ||||
| ;                 DB 2    : DW L_RES | ||||
| ;                 DB 0    ; end | ||||
| 
 | ||||
| ;--------------------------------------- | ||||
| FLEX_END: | ||||
|  | ||||
| @ -441,7 +441,7 @@ FN_HDD_INIT: | ||||
| 	LD	BC,IDE.Write.DeviceHead | ||||
| 	LD	A,IDE.Drive.Master | ||||
| 	OUT	(C),A | ||||
| 	CALL    TEST_HDD_DRV | ||||
| 	CALL	TEST_HDD_DRV | ||||
| 	JR	NZ,.ABSENT | ||||
| 	; | ||||
| .L3:	WAIT_HDD | ||||
|  | ||||
| @ -59,6 +59,7 @@ RST_CONF: | ||||
| 
 | ||||
| 
 | ||||
| ;--[] | ||||
| ;[x] | ||||
| .SP2000: | ||||
| 	LD BC,Port_All_Mode | ||||
| 	IN A,(C) | ||||
| @ -135,17 +136,42 @@ RST_CONF: | ||||
| 	; ãáâ  ¢«¨¢ ¥¬ ã«¥¢ãî ª àâã ¯®à⮢ | ||||
| 	LD	A,CNF_PORT.CNF_0 | ||||
| 	OUT	(SYS_PORT.ON),A | ||||
| 	; ¨ â ª ¯®ïâ® çâ® ¤¥« ¥â | ||||
| 	IN	A,(SLOT3)						; á®åà ï¥¬ ®¬¥à ¢®âªã⮩ áâà ¨æë | ||||
| 	PUSH	AF | ||||
| 	LD	A,Spec_Page | ||||
| 	OUT	(SLOT3),A | ||||
| 	; ¯à®¢¥à塞 à §¬¥à ¡«®ª  á ª®ä®© ¨ ¯®«ãç ¥¬ áâà ¨æë ª®äë | ||||
| 	LD	HL,Spec_Page.bitstream_pages | ||||
| 	LD	A,B | ||||
| 	AND	A | ||||
| 	JR	Z,.INIT_ACEX.ReloadConfFromROM | ||||
| 	; | ||||
| 	CALL	EMM.GetMemBlkPages | ||||
| 	LD	A,B | ||||
| 	JR	C,.INIT_ACEX.ERROR | ||||
| 	CP	BitStream_SizeInPages+1	; ª®«¨ç¥á⢮ áâà ¨æ ¢ ªíè ¤«ï ¡¨áâਬ  ¯«îá ®¤  | ||||
| 	JR	NC,.INIT_ACEX.ERROR | ||||
| 	LD	A,(Spec_Page.bitstream_pages) | ||||
| 	INC	A | ||||
| 	JR	Z,.INIT_ACEX.ERROR	 | ||||
| 	; | ||||
| .INIT_ACEX.ReloadConfFromROM: | ||||
| 	; § ª¨¤ë¢ ¥¬ ¢ Spec_Page ¯à®£ã ¤«ï § «¨¢ª¨ ª®äë | ||||
| 	LD	HL,.INIT_ACEX.PROGRAM | ||||
| 	LD	DE,Spec_Page.init_acex | ||||
| 	LD	BC,.INIT_ACEX.PROGRAM.Size | ||||
| 	LDIR | ||||
| 	; ¥á«¨ ZF=0, â® ¯à®æ¥¤ãà  á¤¥« ¥â à¥á¥â á ¯¥à¥§ «¨¢ª®© ¨§ BIOS, ¨ ç¥ ¨§ Š<>˜ | ||||
| 	CALL	Spec_Page.init_acex | ||||
| 	; á®åà ï¥¬ ¢®âªãâë¥ áâà ¨æë ¢ Spec_Page | ||||
| 	IN	A,(SLOT0) | ||||
| 	LD	E,A | ||||
| 	IN	A,(SLOT1) | ||||
| 	LD	D,A | ||||
| 	IN	A,(SLOT2) | ||||
| 	POP	HL			; ¢®ááâ  ¢«¨¢ ¥¬ ®¬¥à ¢®âªã⮩ áâà ¨æë | ||||
| 	LD	L,A | ||||
| 	IN	A,(SLOT3) | ||||
| 	LD	H,A | ||||
| 	LD	A,Spec_Page | ||||
| 	OUT	(SLOT3),A | ||||
| 	LD	(Spec_Page.page_0),DE | ||||
| 	LD	(Spec_Page.page_2),HL | ||||
| 	; ¤®áâ ñ¬  ¤à¥á ¢®§¢à â  ¢ ¢ë§ë¢ îéãî äãªæ¨î ¨ á®åà ï¥¬ ¢ Spec_Page | ||||
| @ -163,107 +189,53 @@ RST_CONF: | ||||
| 	LD	HL,0 | ||||
| 	ADD	HL,SP | ||||
| 	LD	(Spec_Page.Stack_Point),HL | ||||
| 	; ¯à®¢¥à塞 à §¬¥à ¡«®ª  á ª®ä®© ¨ ¯®«ãç ¥¬ áâà ¨æë ª®äë | ||||
| 	;PUSH	BC | ||||
| 	LD	HL,Spec_Page.bitstream_pages | ||||
| 	LD	A,B | ||||
| 	CALL	EMM.GetMemBlkPages | ||||
| 	LD	A,B | ||||
| 	;POP	BC | ||||
| 	;LD	B,A | ||||
| 	JR	C,.INIT_ACEX.ERROR | ||||
| 	CP	4+1	;!HARDCODE ª®«¨ç¥á⢮ áâà ¨æ ¢ ªíè ¤«ï ¡¨áâਬ  ¯«îá ®¤  | ||||
| 	JR	NC,.INIT_ACEX.ERROR | ||||
| 	;PUSH	BC | ||||
| 	; § ª¨¤ë¢ ¥¬ ¢ Spec_Page ¯à®£ã ¤«ï § «¨¢ª¨ ª®äë | ||||
| 	LD	HL,.INIT_ACEX.PROGRAM | ||||
| 	LD	DE,Spec_Page.init_acex | ||||
| 	LD	BC,.INIT_ACEX.PROGRAM.Size | ||||
| 	LDIR | ||||
| 	; “áâ  ¢«¨¢ ¥¬ ª«îç¨ | ||||
| 	LD	HL,Spec_Page.flag_R | ||||
| 	LD	(HL),"R" | ||||
| 	INC	HL | ||||
| 	LD	(HL),"S" | ||||
| 	INC	HL | ||||
| 	LD	(HL),"T" | ||||
| 	; | ||||
| 	;POP	BC | ||||
| 	; B = size of ram block in pages | ||||
| 	CALL	Spec_Page.init_acex | ||||
| 	; | ||||
|         ; .. ... ... ..  | ||||
|         ;!TODO ᤥ« âì äãªæ¨î ¯® § «¨¢ª¥ ᢮¥© ª®äë, ¯¥à¥å¢ âã à¥á¥â . | ||||
| 	; .. ... ... ..  | ||||
| 	;!TODO ᤥ« âì äãªæ¨î ¯® § «¨¢ª¥ ᢮¥© ª®äë, ¯¥à¥å¢ âã à¥á¥â . | ||||
| 	; *. ‚室 ¢ ¯®¤äãªæ¨î ⮫쪮 ç¥à¥§ RST 08 ¨«¨ #18 | ||||
| 	; *. ‘®åà ¨âì ¢á¥ áâà ¨æë ¯®«ì§®¢ â¥«ï ¢ SYS_PAGE ¤«ï ¯¥à¥å¢ â  à¥á¥â  | ||||
| 	; *. „®áâ âì á® á⥪   ¤à¥á ¢®§¢à â  ¨ á®åà ¨âì ¢ SYS_PAGE ¤«ï ¯¥à¥å¢ â  à¥á¥â  | ||||
| 	; *. ‘®åà ¨âì ªã¤ -¨¡ã¤ì § ç¥¨¥ á⥪  | ||||
| 	; * | ||||
|         ; .. ... ... ..  | ||||
|         LD      BC,256*BIOS.REINIT.HARD_RESET + BIOS.REINIT | ||||
|         JP_to_BIOS | ||||
| 
 | ||||
| 	; .. ... ... ..  | ||||
| 	LD	BC,256*BIOS.REINIT.HARD_RESET + BIOS.REINIT | ||||
| 	JP_to_BIOS | ||||
| 	; | ||||
| .INIT_ACEX.ERROR: | ||||
| 	POP	BC | ||||
| 	LD	A,(Spec_Page.page_2) | ||||
| 	OUT	(SLOT2),A | ||||
| 	LD	A,(Spec_Page.page_3) | ||||
| 	POP	AF | ||||
| 	OUT	(SLOT3),A | ||||
| 	SCF | ||||
| 	RET | ||||
| ; | ||||
| .INIT_ACEX.PROGRAM: | ||||
| 	DISPLAY "	!!!	!!!	.INIT_ACEX.PROGRAM	!!!	!!!" | ||||
|  DISP	Spec_Page.init_acex | ||||
|  DISPLAY "	!!!	!!!	.INIT_ACEX.PROGRAM	!!!	!!!" | ||||
| 	DISP	Spec_Page.init_acex | ||||
| 		; | ||||
| 		SAFE_PORTY | ||||
| 		IN	A,(FastRAM.ON) | ||||
| 		EXX | ||||
| 		IN	A,(SLOT1) | ||||
| 		LD	(.slot1_page),A | ||||
| 		; | ||||
| 		LD	A,(Spec_Page.bitstream_pages) | ||||
| 		OUT	(SLOT1),A					; áâà ¨æ  á ¤ ë¬¨ ä ©«  | ||||
| 		; | ||||
| 		XOR	A | ||||
| 		OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 0 | ||||
| 		; | ||||
| 		LD	HL,#5000					; ¯¥à¥ª¨¤ë¢ ¨¥ ¤ ëå ¢ áâà ¨æã Š<>˜ = 0 | ||||
| 		LD	DE,#1000 | ||||
| 		LD	BC,#3000 | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD	A,(Spec_Page.bitstream_pages+1) | ||||
| 		CP	#FF | ||||
| 		JR	Z,.INIT_ACEX.PROGRAM.SET_KEYS | ||||
| 		OUT	(SLOT1),A					; á«¥¤ãîé ï áâà ¨æ  á ¤ ë¬¨ ä ©«  | ||||
| 		LD	A,1 | ||||
| 		OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 1 | ||||
| 		; | ||||
| 		LD	H,D						; LD HL,#4000 | ||||
| 		LD	D,E						; LD DE,#0000 | ||||
| 		LD	B,H						; LD BC,#4000 | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD	A,(Spec_Page.bitstream_pages+2) | ||||
| 		CP	#FF | ||||
| 		JR	Z,.INIT_ACEX.PROGRAM.SET_KEYS | ||||
| 		OUT	(SLOT1),A					; á«¥¤ãîé ï áâà ¨æ  á ¤ ë¬¨ ä ©«  | ||||
| 		LD	A,2 | ||||
| 		OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 2					; á«¥¤ãîé ï áâà ¨æ  á ¤ ë¬¨ ä ©«  | ||||
| 		; | ||||
| 		EX	DE,HL						; LD HL,#4000 | ||||
| 		LD	D,E						; LD DE,#0000 | ||||
| 		LD	B,H						; LD BC,#4000 | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD	A,(Spec_Page.bitstream_pages+3) | ||||
| 		CP	#FF | ||||
| 		JR	Z,.INIT_ACEX.PROGRAM.SET_KEYS | ||||
| 		OUT	(SLOT1),A					; á«¥¤ãîé ï áâà ¨æ  á ¤ ë¬¨ ä ©«  | ||||
| 		LD	A,3 | ||||
| 		OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 1 | ||||
| 		; | ||||
| 		LD	H,D						; LD HL,#4000 | ||||
| 		LD	D,E						; LD DE,#0000 | ||||
| 		LD	BC,#3EDF					; !HARDCODE ®á⠢訩áï à §¬¥à ¡¨âáâਬ  | ||||
| 		LDIR | ||||
| 		LD	A,#FE						; ç⮡ ¯à®¢¥à¨âì, çâ® ¢ë§ë¢ âì ¯®á«¥ CALL NZ,.INIT_ACEX.PROGRAM.LOAD | ||||
| 		; âãâ ZF ¤®«¦¥ ¡ëâì ¨§ ¢ë§ë¢ î饩 ¯à®æ¥¤ãàë | ||||
| 		CALL	NZ,.INIT_ACEX.PROGRAM.LOAD			; ¥á«¨ RAM_BLOCK ID ¥ à ¢¥ 0, â® ¢ë¯®«ï¥âáï | ||||
| 		INC	A						; ä« £ ZF=0 £à㧨¬ ¨§ ROM | ||||
| 		; | ||||
| .INIT_ACEX.PROGRAM.SET_KEYS: | ||||
| 		LD	A,3 | ||||
| 		OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 3 | ||||
| 		; | ||||
| 		LD	HL,.INIT_ACEX.Reload_String			; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  | ||||
| 		LD	DE,ACEX.LOADER.String_Address-#C000 | ||||
| 		JR	Z,1F						; ãáâ  ¢«¨¢ ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  | ||||
| 		INC	L						; § â¨à ¥¬ ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  | ||||
| 1:		LD	DE,ACEX.LOADER.String_Address-#C000 | ||||
| 		LD	BC,#10 | ||||
| 		LDIR | ||||
| 
 | ||||
| @ -275,8 +247,43 @@ RST_CONF: | ||||
| 		XOR	A | ||||
| 		OUT	(FastRAM.SLOT0),A | ||||
| 		IN	A,(FastRAM.OFF) | ||||
| .slot1_page+1:	LD	A,0 | ||||
| 		OUT	(SLOT1),A | ||||
| 		RET | ||||
| 	; | ||||
| 		; | ||||
| 		; | ||||
| .INIT_ACEX.PROGRAM.LOAD: | ||||
| 		XOR	A						; áâà ¨æ  Š<>˜ | ||||
| 		LD	HL,Spec_Page.bitstream_pages | ||||
| 		OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 0 | ||||
| 		INC	A | ||||
| .INIT_ACEX.PROGRAM.load_loop: | ||||
| 		EX	AF,AF' | ||||
| 		LD	A,(HL) | ||||
| 		INC	HL | ||||
| 		CP	#FF | ||||
| 		RET	Z | ||||
| 		OUT	(SLOT1),A					; áâà ¨æ  á ¤ ë¬¨ ä ©«  | ||||
| 		EX	AF,AF' | ||||
| 		; | ||||
| 		; ¯¥à¥ª¨¤ë¢ ¨¥ #3000 ¡ ©â®¢ ¢ Š<>˜(0) = #1000 | ||||
| 		EXX | ||||
| 		 LD	HL,#4000					 | ||||
| 		 LD	DE,#1000 | ||||
| 		 LD	BC,#3000 | ||||
| 		 LDIR | ||||
| 		 ; ¤®ª¨¤ë¢ ¨¥ #1000 ¡ ©â®¢ ¢ Š<>˜(1) = #0000 | ||||
| 		 ; HL = #7000 | ||||
| 		 OUT	(FastRAM.SLOT0),A				; ‘âà ¨æ  Š<>˜ = 1 | ||||
| 		 INC	A | ||||
| 		 ; | ||||
| 		 LD	D,C		; LD DE,0 | ||||
| 		 LD	B,#10		; LD BC,#1000 | ||||
| 		 LDIR | ||||
| 		EXX | ||||
| 		JR	.INIT_ACEX.PROGRAM.load_loop | ||||
| 
 | ||||
| 	 | ||||
| .INIT_ACEX.Reload_String: | ||||
| 		DB	ACEX.RELOAD_STRING | ||||
| 	; | ||||
|  | ||||
| @ -53,15 +53,15 @@ FN_VERSION: | ||||
| 	PUSH HL | ||||
| 	EX DE,HL | ||||
| 	LD HL,ID_SPRINTER_length | ||||
| 
 | ||||
| 	; | ||||
| 	LD	B,0 | ||||
| 	LD	C,(HL) | ||||
| 	INC	HL | ||||
| 	LD	B,0 | ||||
| 	LDIR | ||||
| 
 | ||||
| 	; | ||||
| 	POP HL | ||||
| 	LD DE,(ID_Version) ;rdlow-ok | ||||
| 
 | ||||
| 	; | ||||
| 	IN A,(SLOT2) | ||||
| 	EX AF,AF' | ||||
| 	LD A,SYS_PAGE | ||||
| @ -69,21 +69,30 @@ FN_VERSION: | ||||
| 	LD BC,(SYS_PAGE.CONFIG_BYTE-#4000)                              ; Version PLD	; !TODO ç¥à¥§ áâàãªâãàã ¤«ï ¯¥à¥¬¥ëå ¡¨®á  | ||||
| 	EX AF,AF' | ||||
| 	OUT (SLOT2),A | ||||
| 	LD A,2								; —¨á«® ¯®«¥© | ||||
| 	LD A,ID_SPRINTER.Records_Num					; —¨á«® ¯®«¥© | ||||
| 	AND A | ||||
| 	RET | ||||
| ;----------------------------------------------------------------------; | ||||
| 
 | ||||
| ;----------------------------------------------------------------------; | ||||
| FN_CRIPT: | ||||
| 	DEC B | ||||
| 	DEC	B | ||||
| 	JR	Z,.board_id | ||||
| 	DEC	B | ||||
| 	SCF | ||||
| 	RET NZ | ||||
| 	LD HL,(ROM_NUMBER.part1) ;rdlow-ok | ||||
| 	LD A,(ROM_NUMBER.part2)  ;rdlow-ok | ||||
| 	LD BC,(BoardID.start)    ;rdlow-ok | ||||
| 	LD DE,(BoardID.end)      ;rdlow-ok | ||||
| 	AND A | ||||
| 	RET	NZ | ||||
| 	; [ ] 25/01/24 | ||||
| .Acex_ver: | ||||
| 	 ;!TODO | ||||
| 	 AND	A | ||||
| 	 RET	 | ||||
| 	; | ||||
| .board_id: | ||||
| 	LD	HL,(ROM_NUMBER.part1) ;rdlow-ok | ||||
| 	LD	A,(ROM_NUMBER.part2)  ;rdlow-ok | ||||
| 	LD	BC,(BoardID.start)    ;rdlow-ok | ||||
| 	LD	DE,(BoardID.end)      ;rdlow-ok | ||||
| 	AND	A | ||||
| 	RET | ||||
| ; BoardID_start old address     #312A | ||||
| ; BoardID_end old address       #312D | ||||
| @ -100,6 +109,7 @@ EMM.CheckColdInit: | ||||
| 	LD	HL,SYS_PAGE.ID_FLAG - #4000 | ||||
| 	LD	DE,ID_SPRINTER_length | ||||
| 	LD	A,(DE) | ||||
| 	DEC	A | ||||
| 	INC	DE | ||||
| 	LD	B,A | ||||
| .loop:	LD	A,(DE) | ||||
|  | ||||
| @ -1,3 +1,5 @@ | ||||
| ; Header of bitstream which non packed | ||||
| 	DB #FF,#FF,#62,#7B,#39,#00,#FF,#FF
 | ||||
| 	DB	#FF,#FF,#62,#7B,#39,#00,#FF,#FF	; 1k30
 | ||||
| ; Packed: | ||||
| 	;DB	#FF,#FF,#62,#7B,#3C,#00,#01,#FF	; 1k50
 | ||||
| ; | ||||
| @ -280,7 +280,7 @@ CLEARM:	IN	A,(SLOT3) | ||||
| 	CALL	NZ,CCHAIN | ||||
| 	POP	AF | ||||
| 	OUT	(SLOT3),A | ||||
| 	;!TEST; [ ]	04/11/2023 Žâ¤¥«ìë¥ à ¬¤¨áª¨ ¤«ï ०¨¬  ᯥªâà㬠 ¨ DSS. BLK_TO_RAMD | ||||
| 	;!TEST; [ ]	04/11/2023 Žâ¤¥«ìë¥ à ¬¤¨áª¨ ¤«ï ०¨¬  ᯥªâà㬠 ¨ DSS. | ||||
| 	 LD	B,high BIOS.SWAP_RAM_DRIVES.Sp2000 | ||||
| 	 JP	SWAP_RAM_DRIVES | ||||
| 	; | ||||
|  | ||||
| @ -49,13 +49,13 @@ COMAND_LOOP: | ||||
|         INC HL | ||||
|         CP ":" | ||||
|         JR Z,COMAND_L1 | ||||
|         CP #0D | ||||
|         CP ZX_Char.carriage_return | ||||
|         JR NZ,COMAND_LOOP | ||||
|         RET | ||||
| 
 | ||||
| COMAND_L1: | ||||
|         LD A,(HL) | ||||
|         CP #EA          ;!HARDCODE | ||||
|         CP ZX_Token.rem | ||||
|         RET NZ | ||||
|         INC HL | ||||
| COMAND_OK:      ; Ž<><C5BD>€<EFBFBD>“†…<E280A0>€ ŠŽŒ€<C592>„€ „‹Ÿ 'expansion' | ||||
| @ -63,7 +63,7 @@ COMAND_OK:      ;  | ||||
|         INC HL | ||||
|         CP ':' | ||||
|         JP Z,MENU_S1 | ||||
|         CP #0D | ||||
|         CP ZX_Char.carriage_return | ||||
|         JP Z,MENU_S1 | ||||
|         CP 'I' | ||||
|         JR Z,COMAND_ISD | ||||
| @ -123,7 +123,7 @@ TASK_SWITCH: | ||||
| 	RLCA | ||||
| 	RLCA | ||||
| 	RLCA | ||||
| 	AND 30H		; ®¢ ï § ¤ ç  0..3 | ||||
| 	AND #30		; ®¢ ï § ¤ ç  0..3 | ||||
|         LD C,A | ||||
| 
 | ||||
| 	IN A,(SLOT3) | ||||
|  | ||||
| @ -233,8 +233,8 @@ BASIC_MENU: | ||||
|         LD DE,(ZX_VARS.CH_ADR) | ||||
|         PUSH DE | ||||
|         LD (ZX_VARS.CH_ADR),HL | ||||
|         CALL_48X 1C8Ch  ; SYMBOL VAR | ||||
|         CALL_48X 2BF1h  ; input txt !!! | ||||
|         CALL_48X #1C8C  ; SYMBOL VAR | ||||
|         CALL_48X #2BF1  ; input txt !!! | ||||
|                         ; DE - adr | ||||
|                         ; BC - len | ||||
|         PUSH DE | ||||
|  | ||||
| @ -8,7 +8,7 @@ | ||||
| 	DEFINE	Pashalki		0			;  | ||||
| 	DEFINE	PICTURE_FILE './src/bios/logo/psfathers.bmp' | ||||
| 	DEFINE	StandartCGApallete	1			; <20>®¤ª«îç âì ¯ «¨âàã ¨§ standart_colors.inc | ||||
| 
 | ||||
| 	DEFINE	BitStream_SizeInPages	4 | ||||
| 
 | ||||
|  	; ‡ ¤¥à¦ª  ¢ ª ¤à å ¯®á«¥ ®âà¨á®¢ª¨ «®£®â¨¯  (0 = 256) | ||||
|  	DEFINE  LOGO_DELAY_MIN		25 | ||||
|  | ||||
										
											Binary file not shown.
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Anatoliy Belyanskiy
						Anatoliy Belyanskiy