первая бетка восьмой бетки
This commit is contained in:
		
							parent
							
								
									ea26e1f584
								
							
						
					
					
						commit
						934353b970
					
				
										
											Binary file not shown.
										
									
								
							| @ -1176,7 +1176,6 @@ DOS_ON:	NOP	;!TODO ࠡ | ||||
| ;*************************************** | ||||
| ;       BLOCK #3D02-$,FF | ||||
| ;  !TODO ¬®¦® ®¯à¨å®¤®¢ âì âãâ 17 ¡ ©â®¢ | ||||
| ; | ||||
| ;*************************************** | ||||
| 
 | ||||
| ;*************************************** | ||||
| @ -1234,17 +1233,13 @@ PROG_NO_ROM: | ||||
| 	DISP   Spec_Page.no_zx_rom | ||||
| 		DI | ||||
| 		; | ||||
| 		LD	A,CNF_PORT.CNF_0 | ||||
| 		OUT	(SYS_PORT.RAM),A | ||||
| 		; | ||||
| 		LD	A,SHARED_PAGE | ||||
| 		OUT	(SLOT3),A | ||||
| 		OUT	(SLOT2),A | ||||
| 		OUT	(SLOT1),A | ||||
| 		; | ||||
| 		LD      HL,MESSAGE_NR | ||||
| 		LD      DE,#A000 | ||||
| 		LD      BC,MESSAGE_NR.size | ||||
| 		LD      A,C | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD	SP,#BF00 | ||||
| 		; | ||||
| 		LD      E,0 | ||||
| @ -1259,6 +1254,12 @@ PROG_NO_ROM: | ||||
| 		LD      A,1 | ||||
| 		OUT     (SCREEN_SWITCH),A | ||||
| 		; | ||||
| 		LD      HL,MESSAGE_NR | ||||
| 		LD      DE,#A000 | ||||
| 		LD      BC,MESSAGE_NR.size | ||||
| 		LD      A,C | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD      HL,#A000 | ||||
| 		LD      D,0							; delimiter | ||||
| 		LD      E,COLORS.CGA.FLASH + COLORS.CGA.INK.RED | ||||
| @ -1277,7 +1278,7 @@ PROG_NO_ROM.size EQU $-PROG_NO_ROM | ||||
| ;-------------------[] | ||||
| ;-----------------------------------------------------------------------; | ||||
| ;>$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$<;  | ||||
| ;  ENDIF | ||||
| 
 | ||||
| ;-------------------------------[ #FFE0 ]-------------------------------; | ||||
| ;	¯à®£à ¬¬ , ª®â®à ï ¡ã¤ãç¨ à §¬¥é¥®© ¢ #40 áâà ¨æ¥, | ||||
| ;	á  ¤à¥á  RESTARTS, ¯¥à¥å¢ â뢠¥â RESET | ||||
| @ -1290,8 +1291,8 @@ RESTARTS_PROG:	; !TODO LDConf  | ||||
| 		NOP								 | ||||
| 		NOP								 | ||||
| .Size		EQU $-RESTARTS_PROG | ||||
| 	; LD A,1							 | ||||
| 	; OUT (SLOT3),A						 | ||||
| 		; LD	A,1							 | ||||
| 		; OUT	(SLOT3),A						 | ||||
| ;-----------------------------------------------------------------------; | ||||
| 
 | ||||
| ;----------------------------[Setup Starter]----------------------------; | ||||
| @ -1485,8 +1486,6 @@ kbd_loop2: | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ;#######################################################################; | ||||
| ;#######################################################################; | ||||
| ;-----------------------------------------------------------------------; | ||||
| @ -1504,6 +1503,11 @@ ROM_DISK.Pages:                                                         ;  | ||||
| ;#######################################################################; | ||||
| ; | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ;---------[Return to EXTENSION]--------- | ||||
|         _mInfoBLOCK #3FD0-$,#FF                                         ; ToBIOS_FromEXT | ||||
| ; #3FD0 | ||||
|  | ||||
| @ -300,13 +300,16 @@ INIT_CONFIG_ALL: | ||||
| 	LD DE,CNF_PORT.CNF_0 + ROM.BIOS | ||||
| 	LD (SYS_PAGE.CONFIG_DE - #4000),DE | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 	; LD HL,SYS_PAGE.ZX_TASK.CURRENT - #4000				; 㡨âì ¢á¥ § ¤ ç¨ | ||||
| 	; LD DE,SYS_PAGE.ZX_TASK.CURRENT+1 - #4000 | ||||
| 	; LD BC,_ZX_TASK - 1 | ||||
| 	; LD (HL),0 | ||||
| 	; LDIR | ||||
| 
 | ||||
| 
 | ||||
| 	LD	A,Spec_Page | ||||
| 	OUT	(SLOT2),A | ||||
| 	LD	(Spec_Page.flag_Z - #4000),A | ||||
| 
 | ||||
| 	EX AF,AF' | ||||
| 	OUT (SLOT2),A | ||||
|  | ||||
| @ -437,35 +437,19 @@ EXIT_SETUP:	CALL	INT_OFF | ||||
| 		; error | ||||
| 		XOR	A | ||||
| 		OUT	(SYS_PORT.ROM),A | ||||
| 		LD	D,CMOS_CELL.QuickStartSetUp | ||||
| 		LD	D,CMOS_CELL.QuickStartSetUp	; ®¡ã«ï¥¬ ¯ à ¬¥âà   ¢á直© á«ãç © | ||||
| 		CALL	CMOS_WR | ||||
| 		LD	A,SYS_PAGE | ||||
| 		OUT	(SLOT3),A | ||||
| 		RET | ||||
| 		; | ||||
| 		CALL	ScreenPOS.CRLF | ||||
| 		LD	A,msgStrings.errorZXmode | ||||
| 		LD	E,COLORS.CGA.INK.RED | ||||
| 		CALL	POSTMSC | ||||
| .loop_di:	DI | ||||
| 		HALT | ||||
| 		JR	.loop_di | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ;	ELSE | ||||
| 	;LD	BC,#020E | ||||
| 	;CALL	GET_CMOS_VALUE | ||||
| 	;OR	A | ||||
| 	;LD	A,#EC	;SPRINTER | ||||
| 	;JR	Z,XFLEX | ||||
| 	;LD	A,#EA	;SPECTRUM | ||||
| ;XFLEX: | ||||
| 		; XOR	A			;LD      A,ROM.BIOS | ||||
| 		; OUT	(SYS_PORT.ROM),A | ||||
| 		; POP	HL			; ¯¨å ¥âáï ¢ EXP.ASM ¢ ¯à®æ¥¤ãॠ | ||||
| 		; JP	(HL) | ||||
| 	;LD	(JMPHL),HL | ||||
| 	;LD	C,#F3 | ||||
| 	;RST_to_BIOS | ||||
| ;JMPHL	EQU $+1 | ||||
| 	;JP	#0000 | ||||
| 		; ENDIF | ||||
| 
 | ||||
| SetUp_ZX_HDD:	LD	D,CMOS_CELL.TRDOSmount | ||||
| 		CALL	CMOS_RD | ||||
| 		AND	%1010'1010	; ¬ áª  ¤«ï 4-å HDD | ||||
| @ -1827,6 +1811,71 @@ init_zx_roms:	DI | ||||
| 		OUT	(SYS_PORT.ROM),A | ||||
| 		LD	A,Spec_Page | ||||
| 		OUT	(SLOT3),A | ||||
| .init_41h:	; § ¡¨âì FF- ¬¨ | ||||
| 		LD	HL,#C000 | ||||
| 		LD	DE,#C001 | ||||
| 		LD	BC,#3FFF - 2 | ||||
| 		LD	(HL),#FF | ||||
| 		LDIR | ||||
| 		; ‡ £«ã誠 ¤«ï áâà ¨æë #41 | ||||
| 		LD HL,PROG_NO_ROM | ||||
| 		LD DE,#C000 + Spec_Page.no_zx_rom | ||||
| 		LD BC,PROG_NO_ROM.size | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD HL,RAM_BIOS_PROG | ||||
| 		LD DE,#C000 + Spec_Page.to_bios | ||||
| 		LD BC,RAM_BIOS_PROG.Length | ||||
| 		LDIR | ||||
| 		RET | ||||
| ;---------------------------------------------------------------------[] | ||||
| 
 | ||||
| 
 | ||||
| ;--------------------------------------- | ||||
|  INCLUDE 'src/bios/ROM/SETUP/messages.z80' | ||||
| ;--------------------------------------- | ||||
| ; | ||||
| 
 | ||||
|         STRUCT  MAIN_BUFFERS | ||||
| ID              BLOCK #100 | ||||
| Messages        BLOCK MSG_ENG.size | ||||
| Shared          BLOCK 1024 | ||||
| End             BYTE | ||||
|         ENDS | ||||
| 
 | ||||
| 
 | ||||
| memBUFFER       MAIN_BUFFERS = $ | ||||
| STACK           EQU #C000 | ||||
| .Size           EQU 128 | ||||
| 
 | ||||
| 
 | ||||
|  IF memBUFFER.End-1 > #C000-STACK.Size | ||||
| 	DISPLAY 'memBUFFER.Shared overlaps STACK by:	',/A,(memBUFFER.End-1)-(#C000-STACK.size) | ||||
| 	ASSERT memBUFFER.End-1 < #C000-STACK.size | ||||
|  ENDIF | ||||
| 
 | ||||
|  IFDEF PREBUILD | ||||
| 	OUTEND | ||||
| 
 | ||||
| 	DISPLAY '-----[Set_Pictures Prebuild start]-----' | ||||
| 	MMU		1 e, 0						; áâà ¨æ  0 ¢ ¡ ªã 0 ¨ ¯à®¢¥àª    £à ¨æë. | ||||
| 	ORG		ROM_MAP.LOGO | ||||
| 	INCLUDE 'src/bios/logo/Set_Pictures.asm' | ||||
| 	DISPLAY '-----[Set_Pictures Prebuild done ]-----' | ||||
|  ELSE | ||||
|         DISPLAY '------------------[Main.asm]------------------'		 | ||||
|         DISPLAY 'End code address:                ',/A,$-1 | ||||
|         DISPLAY 'Code size:                       ',/A,$-COMPILE_ADDR.MAIN | ||||
|         DISPLAY 'End buffers address:             ',/A,memBUFFER.End-1 | ||||
|         DISPLAY 'Free memory:                     ',/A,#C000-(memBUFFER.End-1)-STACK.Size | ||||
|         DISPLAY 'Unused bytes before INT_POINTER: ',/A,INT_POINTER-before_intPointer | ||||
|  ENDIF | ||||
| ; | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ;======================================================================================================================= | ||||
| 
 | ||||
| ; 	;;;;;;;; | ||||
| ; 	ELSE | ||||
| ; 	;;;;;;;; | ||||
| @ -1892,65 +1941,4 @@ init_zx_roms:	DI | ||||
| ; 		; ¬®¦® § ¤¥©á⢮¢ âì ¥éñ 4 áâà ¨æë   ¯®àâë #E4..#E7 | ||||
| ; 	;;;;;;;; | ||||
| ; 	ENDIF | ||||
| ; 	;;;;;;;; | ||||
| 
 | ||||
| .init_41h:	; § ¡¨âì FF- ¬¨ | ||||
| 		LD	HL,#C000 | ||||
| 		LD	DE,#C001 | ||||
| 		LD	BC,#3FFF - 2 | ||||
| 		LD	(HL),C | ||||
| 		LDIR | ||||
| 		; ‡ £«ã誠 ¤«ï áâà ¨æë #41 | ||||
| 		LD HL,PROG_NO_ROM | ||||
| 		LD DE,#C000 + Spec_Page.no_zx_rom | ||||
| 		LD BC,PROG_NO_ROM.size | ||||
| 		LDIR | ||||
| 		; | ||||
| 		LD HL,RAM_BIOS_PROG | ||||
| 		LD DE,#C000 + Spec_Page.to_bios | ||||
| 		LD BC,RAM_BIOS_PROG.Length | ||||
| 		LDIR | ||||
| 		RET | ||||
| ;---------------------------------------------------------------------[] | ||||
| 
 | ||||
| 
 | ||||
| ;--------------------------------------- | ||||
|  INCLUDE 'src/bios/ROM/SETUP/messages.z80' | ||||
| ;--------------------------------------- | ||||
| ; | ||||
| 
 | ||||
|         STRUCT  MAIN_BUFFERS | ||||
| ID              BLOCK #100 | ||||
| Messages        BLOCK MSG_ENG.size | ||||
| Shared          BLOCK 1024 | ||||
| End             BYTE | ||||
|         ENDS | ||||
| 
 | ||||
| 
 | ||||
| memBUFFER       MAIN_BUFFERS = $ | ||||
| STACK           EQU #C000 | ||||
| .Size           EQU 128 | ||||
| 
 | ||||
| 
 | ||||
|  IF memBUFFER.End-1 > #C000-STACK.Size | ||||
| 	DISPLAY 'memBUFFER.Shared overlaps STACK by:	',/A,(memBUFFER.End-1)-(#C000-STACK.size) | ||||
| 	ASSERT memBUFFER.End-1 < #C000-STACK.size | ||||
|  ENDIF | ||||
| 
 | ||||
|  IFDEF PREBUILD | ||||
| 	OUTEND | ||||
| 
 | ||||
| 	DISPLAY '-----[Set_Pictures Prebuild start]-----' | ||||
| 	MMU		1 e, 0						; áâà ¨æ  0 ¢ ¡ ªã 0 ¨ ¯à®¢¥àª    £à ¨æë. | ||||
| 	ORG		ROM_MAP.LOGO | ||||
| 	INCLUDE 'src/bios/logo/Set_Pictures.asm' | ||||
| 	DISPLAY '-----[Set_Pictures Prebuild done ]-----' | ||||
|  ELSE | ||||
|         DISPLAY '------------------[Main.asm]------------------'		 | ||||
|         DISPLAY 'End code address:                ',/A,$-1 | ||||
|         DISPLAY 'Code size:                       ',/A,$-COMPILE_ADDR.MAIN | ||||
|         DISPLAY 'End buffers address:             ',/A,memBUFFER.End-1 | ||||
|         DISPLAY 'Free memory:                     ',/A,#C000-(memBUFFER.End-1)-STACK.Size | ||||
|         DISPLAY 'Unused bytes before INT_POINTER: ',/A,INT_POINTER-before_intPointer | ||||
|  ENDIF | ||||
| ; | ||||
| ; 	;;;;;;;; | ||||
| @ -602,7 +602,7 @@ msgStrings: | ||||
|  _mSetStr bootFail, tmp_Counter			:	DZ	' fail'					; !FIXIT strFail | ||||
|  _mSetStr bootOk, tmp_Counter			:	DZ	' OK' | ||||
|  _mSetStr afterBootFail, tmp_Counter		:	DZ	'PRESS <ENTER> TO REBOOT, <DEL> TO ENTER SETUP OR <ESC> TO ZX-MODE . . .' | ||||
| ; _mSetStr noMemZX, tmp_Counter			:	DZ	'Error! No free memory to start ZX mode. Press CTRL+ALT+DEL or RESET.' | ||||
|  _mSetStr errorZXmode, tmp_Counter		:	DZ	'Error! Spectrum mode launch failed. Press CTRL+ALT+DEL or RESET.' | ||||
| ; | ||||
|  _mSetStr parLang, tmp_Counter			:	DZ	'Language (ï§ëª)            : ' | ||||
|  _mSetStr valLangEng, tmp_Counter		:	DZ	'English ' | ||||
| @ -709,7 +709,7 @@ msgStrings: | ||||
|  _mSetStr valQS_SetUpTrDos, tmp_Counter		:	DZ	'TR-DOS    ' | ||||
|  _mSetStr valQS_SetUpExp, tmp_Counter		:	DZ	'Expansion ' | ||||
|  _mSetStr valQS_SetUpTrDos48, tmp_Counter	:	DZ	'TR-DOS 48 ' | ||||
|  _mSetStr valQS_SetUpBasic48, tmp_Counter	:	DZ	'Basic 48+ ' | ||||
|  _mSetStr valQS_SetUpBasic48, tmp_Counter	:	DZ	'Basic 48  ' | ||||
| ; _mSetStrRus valLoadZXromsAuto, tmp_Counter	:	DZ	'On call   ' | ||||
|  IF NEW_FEATURE | ||||
|   _mSetStr parSetTime, tmp_Counter		:       DZ      'Date and time setup : ' | ||||
| @ -778,7 +778,7 @@ msgRusStrings: | ||||
|  _mSetStrRus bootFail, tmp_Counter		:	DZ	' ¥¢®§¬®¦¥' | ||||
|  _mSetStrRus bootOk, tmp_Counter		:	DZ	' OK' | ||||
|  _mSetStrRus afterBootFail, tmp_Counter		:	DZ	'<EFBFBD>€†Œˆ’… <ENTER> „‹Ÿ <EFBFBD>…<EFBFBD>…‡€ƒ<EFBFBD>“‡Šˆ, <DEL> „‹Ÿ <EFBFBD>€‘’<EFBFBD>Ž…Š ˆ‹ˆ <ESC> „‹Ÿ ZX-MODE . . .' | ||||
| ; _mSetStrRus noMemZX, tmp_Counter		:	DZ	'Žè¨¡ª ! <20>¥¤®áâ â®ç® ¯ ¬ï⨠¤«ï áâ àâ  ZX Mode. <20> ¦¬¨â¥ CTRL+ALT+DEL ¨«¨ RESET.' | ||||
|  _mSetStrRus errorZXmode, tmp_Counter		:	DZ	'Žè¨¡ª ! ‡ ¯ã᪠०¨¬  Spectrum ¥ 㤠«áï. <EFBFBD> ¦¬¨â¥ CTRL+ALT+DEL ¨«¨ RESET.' | ||||
| ; | ||||
|  _mSetStrRus parLang, tmp_Counter		:	DZ	'Ÿ§ëª (language)            : ' | ||||
|  _mSetStrRus valLangEng, tmp_Counter		:	DZ	'English   ' | ||||
| @ -885,7 +885,7 @@ msgRusStrings: | ||||
|  _mSetStrRus valQS_SetUpTrDos, tmp_Counter	:	DZ	'TR-DOS      ' | ||||
|  _mSetStrRus valQS_SetUpExp, tmp_Counter	:	DZ	'Expansion   ' | ||||
|  _mSetStrRus valQS_SetUpTrDos48, tmp_Counter	:	DZ	'TR-DOS 48   ' | ||||
|  _mSetStrRus valQS_SetUpBasic48, tmp_Counter	:	DZ	'Basic 48+   ' | ||||
|  _mSetStrRus valQS_SetUpBasic48, tmp_Counter	:	DZ	'Basic 48    ' | ||||
| ; _mSetStrRus valLoadZXromsAuto, tmp_Counter	:	DZ	'<27>ਠ¢ë§®¢¥  ' | ||||
|  IF NEW_FEATURE | ||||
|  _mSetStrRus parSetTime, tmp_Counter		:	DZ	'„ â  ¨ ¢à¥¬ï        : ' | ||||
|  | ||||
| @ -390,7 +390,7 @@ INIT_vROM:	LD	A,(HL) | ||||
| 		POP	DE | ||||
| 		POP	BC | ||||
| 		DJNZ	.loop | ||||
| 		; ãáâ ®¢ª  ¬¥âª¨ ZX ¥á«¨ à ¬¡«®ª ¥ #FF | ||||
| 		; ãáâ ®¢ª  ¬¥âª¨ ZX ¥á«¨ à ¬¡«®ª ¥ 0 | ||||
| 		LD	A,(SYS_PAGE.Block_ID.vROM) | ||||
| 		OR	A | ||||
| 		RET	Z | ||||
| @ -726,7 +726,6 @@ GOTO_SPECTRUM:	LD	A,BIOS.Error.NotSupported | ||||
| 		OUT	(RGMOD),A	; ॣ¨áâà ¬®¤ë | ||||
| 		; | ||||
| 		LD	IY,.BASIC_128 | ||||
| 		;!TODO ¥á«¨ 48ª â® ¥ 㦮? ; [ ] free zx pages! | ||||
| 		JR	INIT_PAGES					; ¨¨æ¨ «¨§ æ¨ï ®¬¥à®¢ áâà ¨æ ०¨¬  ᯥªâà㬠 | ||||
| 		;start_basic: | ||||
| .BASIC_128:	LD	SP,#C000 | ||||
| @ -734,7 +733,6 @@ GOTO_SPECTRUM:	LD	A,BIOS.Error.NotSupported | ||||
| 		LD	DE,ZX_VARS.PRINTER_BUFFER			; § ¯ã᪠¯à®£à ¬¬ë   BASIC-¥. | ||||
| 		LD	BC,RES128_PROG.Size | ||||
| 		LDIR | ||||
| 		DI | ||||
| 		JP	ZX_VARS.PRINTER_BUFFER | ||||
| ;-----------------------------------------------------------------------; | ||||
| 
 | ||||
| @ -779,9 +777,14 @@ INIT_PAGES:	LD	A,SYS_PAGE | ||||
| 		JR	Z,.set_pent | ||||
| 		;!FIXIT ®¡à ¡®âª  ®è¨¡ª¨ | ||||
| 		 DI | ||||
| 		 HALT | ||||
| .error_loop:	 LD	A,R | ||||
| 		 AND	7 | ||||
| 		 OUT	(BorderColor),A | ||||
| 		 JR	.error_loop | ||||
| 		; | ||||
| .set_48k:	LD	A,(HL)						; SLOT0, SLOT3 page | ||||
| .set_48k:	LD	A,5	; !HARDCODE CONFIG_DE.ZX_START ‚•Ž„ ‚ BASIC 48 á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨ | ||||
| 		LD	(SYS_PAGE.CONFIG_DE.ZX_START - #8000),A | ||||
| 		LD	A,(HL)						; SLOT0, SLOT3 page | ||||
| 		INC	HL | ||||
| 		LD	E,(HL)						; SLOT1 page | ||||
| 		INC	HL | ||||
| @ -860,7 +863,7 @@ RES128_PROG: | ||||
| 		; 3 ‚•Ž„ ‚ EXPANSION | ||||
| 		;!TODO ¯®ª  ¥ à ¡®â ¥â. Page #45, BIOS (ZX_EXP) #E0 | ||||
| 		XOR	A | ||||
| 		OUT	(C),A | ||||
| 		OUT	(C),A	; 7FFD | ||||
| 		LD	A,#02 | ||||
| 		LD	B,#1F | ||||
| 		OUT	(C),A | ||||
|  | ||||
| @ -368,7 +368,7 @@ SERVICE: | ||||
|         CALL    EXEC_PNT | ||||
|         JR      SERVICE | ||||
| 
 | ||||
| SR_TAB: DW UTILIT | ||||
| SR_TAB: DW RUN_DISK_TRD | ||||
|         DW GOTO_TRDOS.m128 | ||||
|         DW GOTO_TRDOS.m48 | ||||
|         DW TURBO_OFF | ||||
| @ -481,22 +481,24 @@ Hardware_Menu_TAB: | ||||
| ;        DW TR_DOS | ||||
| ;        DW SP_DOS | ||||
| 	DW SPRINTER_ZX | ||||
| 	DW ZX_SPECTRUM_128 | ||||
| 	DW PENTAGON_128 | ||||
| 	DW SCORPION_256 | ||||
| 	DW Pentagon_48 | ||||
| 	DW PENTAGON_128 | ||||
| 	DW PENTAGON_512 | ||||
| 	DW ZX_SPECTRUM_128 | ||||
| 	DW SPRINTER_reset       ;SPRINTER_2X | ||||
| 	DW RET_FROM_M | ||||
| 
 | ||||
| ; DC - every last character of a string will have bit 7 set | ||||
| Hardware_Menu_STR: | ||||
|         BYTE    8               ; ª®«¨ç¥á⢮ ¯ãªâ®¢ | ||||
|         BYTE    9              ; ª®«¨ç¥á⢮ ¯ãªâ®¢ | ||||
|         BYTE    'Hardware',#FF  ; § £®«®¢®ª ¬¥î | ||||
|         DC      'Sprinter ZX ' | ||||
|         DC      'ZX Spectrum' | ||||
|         DC      'Pentagon 128' | ||||
|         DC      'Scorpion 256' | ||||
|         DC      'Pentagon 48 ' | ||||
|         DC      'Pentagon 128' | ||||
|         DC      'Pentagon 512' | ||||
|         DC      'Spectrum 128' | ||||
|         DC      'Restart ' | ||||
|         DC      'RETURN' | ||||
|         DC      " "             ; ¬ àª¥à ª®æ  | ||||
| @ -522,21 +524,20 @@ Hardware_Menu_STR: | ||||
| ;************************************************** | ||||
| SPRINTER_ZX:	LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.SP97_1 | ||||
| 		LD	DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0	; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë | ||||
| 		LD	BC,#FE*256 + %0000'0010				; !HARDCODE Port All Mode data. int pent, set default palette, 320 áâப | ||||
| 		LD	DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0	; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë | ||||
| 		JR	PREPARE_TO_START_ZX | ||||
| 		; | ||||
| ZX_SPECTRUM_128: | ||||
| 		LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.AY8910 | ||||
| 		LD	DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET	; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128 | ||||
| 		LD	BC,#FA*256 + %1000'0011	 | ||||
| 		JR	PREPARE_TO_START_ZX | ||||
| 		JR	PENTAGON_128.zx | ||||
| 		; | ||||
| SCORPION_256:	LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.AY8910 | ||||
| 		LD	DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1	; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë | ||||
| 		LD	BC,#FE*256 + %1000'0001	 | ||||
| 		LD	DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1	; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë | ||||
| PREPARE_TO_START_ZX: | ||||
| 		DI | ||||
| 		LD	A,CNF_PORT.CNF_0 + CNF_PORT.TURBO.ON | ||||
| @ -576,15 +577,26 @@ PREPARE_TO_START_ZX: | ||||
| 		; | ||||
| PENTAGON_128:	LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.AY8910 | ||||
| 		LD	DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET	; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128 | ||||
| 		LD	BC,#FE*256 + %0000'0010	 | ||||
| .zx:		LD	DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET	; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128 | ||||
| 		JR	PREPARE_TO_START_ZX		 | ||||
| 		; | ||||
| PENTAGON_512:	LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.AY8910 | ||||
| 		LD	DE,3*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_512 + CNF_PORT.SCORP_RESET	; !HARDCODE 3 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 512 | ||||
| 		LD	BC,#FE*256 + %0000'0010	 | ||||
| 		JR	PREPARE_TO_START_ZX		 | ||||
| 		LD	DE,3*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_512 + CNF_PORT.SCORP_RESET	; !HARDCODE 3 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 512 | ||||
| 		JR	PREPARE_TO_START_ZX | ||||
| 		; | ||||
| Pentagon_48:	LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.AY8910 | ||||
| 		LD	BC,#FE*256 + %0000'0010	 | ||||
| .zx:		LD	DE,1*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1	; !HARDCODE 1 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠48 ª¡ | ||||
| 		JR	PREPARE_TO_START_ZX	 | ||||
| 		; | ||||
| ZX_Spectrum_48:	LD	L,0						; â®çª  ¢å®¤  ¢ <20>‡“ | ||||
| .custom_ROM:	LD	H,BIOS.RST_CONF.AY8910 | ||||
| 		LD	BC,#FA*256 + %1000'0011	 | ||||
| 		JR	Pentagon_48.zx | ||||
| 
 | ||||
| ; CONFIG_SET: | ||||
| ; 	PUSH    DE | ||||
| @ -663,10 +675,13 @@ SPRINTER_reset: | ||||
| ;    *** MENU UTILITES *** | ||||
| ;***************************** | ||||
| ;!FIXIT íâ® § ¯ã᪠c:\disk.trd - ¥ ¤ã¬ î, çâ® í⮠㦮, ¬®¦® § ¬¥¨âì | ||||
| UTILIT: | ||||
| RUN_DISK_TRD: | ||||
|         LD HL,C_DISK_C | ||||
|         CALL CALL_DOS1 | ||||
| 
 | ||||
| 	LD	A,SYS_PORT.CNF_0 + SYS_PORT.EXTENSION | ||||
| 	OUT	(SYS_PORT.ROM),A | ||||
| 
 | ||||
| 	;CALL DOS_ON | ||||
| 	;LD A,0		; DETECT_HDD | ||||
| 	;CALL EXP_HDD | ||||
| @ -675,12 +690,12 @@ UTILIT: | ||||
| 	;CALL DOS_OFF | ||||
| 
 | ||||
| 
 | ||||
| 	JR C,DISK_UTILIT | ||||
| 	JR C,.DISK_UTILIT | ||||
| 
 | ||||
| 	LD HL,C_DISK_C3 | ||||
|         CALL CALL_DOS1 | ||||
| 
 | ||||
| UTIL_DISK: | ||||
| .UTIL_DISK: | ||||
|         XOR     A | ||||
|         LD     C,BIOS.FreeMemRMD | ||||
|         CALL	ToBIOS_FromEXT | ||||
| @ -692,33 +707,44 @@ UTIL_DISK: | ||||
|         LD     C,BIOS.GET_RAMD_ST | ||||
|         CALL	ToBIOS_FromEXT | ||||
| 
 | ||||
| 	JR C,UTIL_DISK_L1 | ||||
| 	JR Z,UTIL_DISK_L1 | ||||
| 	JR C,.UTIL_DISK_L1 | ||||
| 	JR Z,.UTIL_DISK_L1 | ||||
| 
 | ||||
|         LD HL,C_DISK_C1 | ||||
|         CALL CALL_DOS1 | ||||
| 	; [ ] ¨á¯à ¢«¥ ¡ £ á § ¯ã᪮¬ disk.trd á CNF != 0 | ||||
| 	IN	A,(SLOT3) | ||||
| 	EX	AF,AF' | ||||
| 	LD	A,SYS_PAGE | ||||
| 	OUT	(SLOT3),A | ||||
| 	LD	A,(SYS_PAGE.CONFIG_DE.CNF_PORT) | ||||
| 	EX	AF,AF' | ||||
| 	OUT	(SLOT3),A | ||||
| 	EX	AF,AF' | ||||
| 	OUT	(SYS_PORT.ROM),A | ||||
| 	; | ||||
|         LD HL,C_DISK_C2 | ||||
|         CALL CALL_DOS1 | ||||
|         RET | ||||
| 
 | ||||
| UTIL_DISK_L1: | ||||
| .UTIL_DISK_L1: | ||||
| 	LD A,(ZX_VARS.OPER_DISK) | ||||
| 	INC A | ||||
| 	CP 2 | ||||
| 	JR Z,DISK_UTIL_RET | ||||
| 	JR Z,.DISK_UTIL_RET | ||||
|         LD HL,C_DISK_C5 | ||||
|         CALL CALL_DOS1 | ||||
| 	JR UTIL_DISK | ||||
| 	JR .UTIL_DISK | ||||
| 
 | ||||
| DISK_UTIL_RET: | ||||
| .DISK_UTIL_RET: | ||||
|         LD HL,C_DISK_C6 | ||||
|         CALL CALL_DOS1 | ||||
| 	RET | ||||
| 
 | ||||
| DISK_UTILIT: | ||||
| .DISK_UTILIT: | ||||
| 	LD HL,C_DISK_C4 | ||||
|         CALL CALL_DOS1 | ||||
| 	JR UTIL_DISK | ||||
| 	JR .UTIL_DISK | ||||
| 
 | ||||
| C_DEMO6:        DB .Size, ZX_Token.rem, ':/disk.trd', 13,80 | ||||
| .Size           EQU $-C_DEMO6-1 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Tolik
						Tolik