...
This commit is contained in:
		
							parent
							
								
									d3467450ac
								
							
						
					
					
						commit
						4b3e8113f9
					
				| @ -1 +1 @@ | ||||
| Subproject commit d3626cafdbc4a718c1bb02da6d4c3dc806875896 | ||||
| Subproject commit eb8e55262317fea366bfb6b7d834dde90ff7307b | ||||
| @ -72,37 +72,43 @@ RST_30: | ||||
| ; INTERUPT Point | ||||
| RST38: | ||||
| 	IF TEST_INT | ||||
| 		;INT: | ||||
| 		PUSH	BC | ||||
| 		PUSH	AF | ||||
| 	 ;INT: | ||||
| 	 PUSH	BC | ||||
| 	 PUSH	AF | ||||
| 
 | ||||
| 		LD	C,SLOT3 | ||||
| 		IN	B,(C) | ||||
| 		LD	A,SYS_PAGE | ||||
| 		OUT	(C),A | ||||
| 	 LD	C,SLOT3 | ||||
| 	 IN	B,(C) | ||||
| 	 LD	A,SYS_PAGE | ||||
| 	 OUT	(C),A | ||||
| 
 | ||||
| 		LD	A,(SYS_PAGE.INT_ID) | ||||
| 		CP	#AA | ||||
| 		JR	Z,YESINT | ||||
| 		OUT	(C),B | ||||
| 		JP	NOINT | ||||
| YESINT: 	PUSH    HL | ||||
| 		LD	HL,(SYS_PAGE.INT_ADRESS) | ||||
| 		LD	A,H | ||||
| 		OR	L | ||||
| 		LD	A,(SYS_PAGE.INT_PAGE) | ||||
| 		OUT	(C),B | ||||
| 		PUSH	DE | ||||
| 		CALL	NZ,EXTINT | ||||
| 		POP	DE | ||||
|         	POP     HL | ||||
| NOINT:		POP	AF | ||||
| 		POP	BC | ||||
| 	 LD	A,(SYS_PAGE.INT_ID) | ||||
| 	 CP	#AA | ||||
| 	 JR	Z,YESINT | ||||
| 	 OUT	(C),B | ||||
| 	 JP	NOINT | ||||
| YESINT:  PUSH    HL | ||||
| 	 LD	HL,(SYS_PAGE.INT_ADRESS) | ||||
| 	 LD	A,H | ||||
| 	 OR	L | ||||
| 	 LD	A,(SYS_PAGE.INT_PAGE) | ||||
| 	 OUT	(C),B | ||||
| 	 PUSH	DE | ||||
| 	 CALL	NZ,EXTINT | ||||
| 	 POP	DE | ||||
|          POP     HL | ||||
| NOINT:	 POP	AF | ||||
| 	 POP	BC | ||||
| 	 EI	 | ||||
| 	 RETI | ||||
| 	ELSE | ||||
| 
 | ||||
| ; 	PUSH	AF | ||||
| ; 1:	DEC	A | ||||
| ; 	JR	NZ,1B | ||||
| ; 	POP	AF | ||||
| 	 EI | ||||
| 	 RETI | ||||
| 	ENDIF | ||||
| 
 | ||||
| 	EI | ||||
| 	RETI | ||||
| 
 | ||||
| ;RST10: | ||||
| ;        CALL_48 10h | ||||
| ;        RET | ||||
|  | ||||
| @ -24,14 +24,36 @@ | ||||
| ;[]===========================================================[] | ||||
| ;!FIXIT ¢á¥£¤  ¨¤¥â à ¡®â  á ¤ ë¬¨ ¤«ï ¤¨áª  € | ||||
| FDD_5x.GETMED: | ||||
| 	;!TEST FDD 720/1440 | ||||
| 	IF FDD_NormalCount | ||||
| 	 LD	IY,FDD_INI_TABLE.FDD_0 | ||||
| 	 DEC	A | ||||
| 	 JR	C,.getParams | ||||
| 	 LD	IY,FDD_INI_TABLE.FDD_1 | ||||
| .getParams: | ||||
| 	ENDIF | ||||
| 
 | ||||
| 	IN	A,(SLOT3) | ||||
| 	EX	AF,AF' | ||||
| 	LD	A,SYS_PAGE | ||||
| 	OUT	(SLOT3),A | ||||
| 	LD	HL,(FDD_INI_TABLE.FDD_0.SECTORS) | ||||
| 	LD	DE,(FDD_INI_TABLE.FDD_0.CYLINDL) | ||||
| 	LD	IX,(FDD_INI_TABLE.FDD_0.B_P_S) | ||||
| 	LD	A,(FDD_INI_TABLE.FDD_0.F144) | ||||
| 	;!TEST FDD 720/1440 | ||||
| 	IF FDD_NormalCount | ||||
| 	 LD	L,(IY+1)	;SECTORS | ||||
| 	 LD	H,(IY+2)	;HEADS | ||||
| 	 LD	E,(IY+3)	;CYLINDL | ||||
| 	 LD	D,(IY+4)	;CYLINDH | ||||
| 	 LD	A,(IY+5)	;B_P_S low | ||||
| 	 LD	XL,A | ||||
| 	 LD	A,(IY+6)	;B_P_S High | ||||
| 	 LD	XH,A | ||||
| 	 LD	A,(IY+0)	;F144/720 | ||||
| 	ELSE | ||||
| 	 LD	HL,(FDD_INI_TABLE.FDD_0.SECTORS) | ||||
| 	 LD	DE,(FDD_INI_TABLE.FDD_0.CYLINDL) | ||||
| 	 LD	IX,(FDD_INI_TABLE.FDD_0.B_P_S) | ||||
| 	 LD	A,(FDD_INI_TABLE.FDD_0.F144) | ||||
| 	ENDIF | ||||
| 	LD	B,A | ||||
| 	EX	AF,AF' | ||||
| 	OUT	(SLOT3),A | ||||
| @ -51,20 +73,51 @@ FDD_5x.GETMED: | ||||
| ;Return: None | ||||
| ;[]===========================================================[] | ||||
| FDD_5x.SETMED: | ||||
| 	;!TEST FDD 720/1440 | ||||
| 	IF FDD_NormalCount | ||||
| 	 LD	IY,FDD_INI_TABLE.FDD_0 | ||||
| 	 DEC	A | ||||
| 	 JR	C,.setParams | ||||
| 	 LD	IY,FDD_INI_TABLE.FDD_1 | ||||
| 	ENDIF | ||||
| .setParams: | ||||
| 	IN	A,(SLOT3) | ||||
| 	EX	AF,AF' | ||||
| 	LD	A,SYS_PAGE | ||||
| 	OUT	(SLOT3),A | ||||
| 	LD	A,B | ||||
| 	LD	(FDD_INI_TABLE.FDD_0.SECTORS),HL | ||||
| 	LD	(FDD_INI_TABLE.FDD_0.CYLINDL),DE | ||||
| 	LD	(FDD_INI_TABLE.FDD_0.B_P_S),IX | ||||
| 	LD	(FDD_INI_TABLE.FDD_0.F144),A | ||||
| 
 | ||||
| 	;!TEST FDD 720/1440 | ||||
| 	IF FDD_NormalCount | ||||
| 	 LD	(IY+1),L	;SECTORS | ||||
| 	 LD	(IY+2),H	;HEADS | ||||
| 	 LD	(IY+3),E	;CYLINDL | ||||
| 	 LD	(IY+4),D	;CYLINDH | ||||
| 	 LD	A,XL | ||||
| 	 LD	(IY+5),A	;B_P_S low | ||||
| 	 LD	A,XH | ||||
| 	 LD	(IY+6),A	;B_P_S High | ||||
| 	 LD	(IY+0),B	;F144/720 | ||||
| 	 LD	A,B | ||||
| 	ELSE | ||||
| 	 LD	A,B | ||||
| 	 LD	(FDD_INI_TABLE.FDD_0.SECTORS),HL | ||||
| 	 LD	(FDD_INI_TABLE.FDD_0.CYLINDL),DE | ||||
| 	 LD	(FDD_INI_TABLE.FDD_0.B_P_S),IX | ||||
| 	 LD	(FDD_INI_TABLE.FDD_0.F144),A | ||||
| 	ENDIF | ||||
| 	EX	AF,AF' | ||||
| 	OUT	(SLOT3),A | ||||
| 	EX	AF,AF' | ||||
| 	AND	A | ||||
| 	RET  | ||||
| 
 | ||||
| 	;!TEST FDD 720/1440 | ||||
| 	IF FDD_NormalCount | ||||
| 	 AND	1 | ||||
| 	 JP	Z,FN_TURBO.SET_FDD_720 | ||||
| 	 JP	FN_TURBO..SET_FDD_1440 | ||||
| 	ELSE | ||||
| 	 AND	A | ||||
| 	 RET  | ||||
| 	ENDIF | ||||
| 
 | ||||
| ;[]===========================================================[] | ||||
| ;Function: Detect Disk Density | ||||
|  | ||||
| @ -631,7 +631,6 @@ FN_SYNC: | ||||
| .INT_PENT: | ||||
| 	LD IX,SCREEN_TABLES.PENTAGON | ||||
| ;	JR PROG_SCR | ||||
| 
 | ||||
| .PROG_SCR: | ||||
| 	IN A,(SLOT3) | ||||
| 	EX AF,AF' | ||||
| @ -643,11 +642,11 @@ FN_SYNC: | ||||
| 	LD (SYS_PAGE.COPY_RGADR),A | ||||
| 
 | ||||
| 	LD (SYS_PAGE.CONFIG_ALL),IX | ||||
| 	LD A,0 | ||||
| 	XOR	A | ||||
| 
 | ||||
| ;----[START]-----------------------[? 1] | ||||
| .loop_1: | ||||
| 	OUT (RGADR),A | ||||
| 	OUT (PORT_Y),A | ||||
| 	EX AF,AF' | ||||
| 
 | ||||
| 	LD A,#50 | ||||
| @ -682,7 +681,7 @@ FN_SYNC: | ||||
| 
 | ||||
| 	EX AF,AF' | ||||
| 	INC A | ||||
| 	OUT (RGADR),A | ||||
| 	OUT (PORT_Y),A | ||||
| 	EX AF,AF' | ||||
| 
 | ||||
| 	LD (HL),0 | ||||
| @ -693,7 +692,7 @@ FN_SYNC: | ||||
| 
 | ||||
| 	EX AF,AF' | ||||
| 	INC A | ||||
| 	OUT (RGADR),A | ||||
| 	OUT (PORT_Y),A | ||||
| 	EX AF,AF' | ||||
| 
 | ||||
| 	DJNZ .loop_5 | ||||
| @ -705,9 +704,9 @@ FN_SYNC: | ||||
| 	INC HL | ||||
| 	INC HL | ||||
| 	INC HL | ||||
| 	IN A,(RGADR) | ||||
| 	IN A,(PORT_Y) | ||||
| 	AND #80 | ||||
| 	OUT (RGADR),A | ||||
| 	OUT (PORT_Y),A | ||||
| 	DEC C | ||||
| 	JR NZ,.loop_3 | ||||
| ;------------------------[^ 3]---------- | ||||
| @ -729,7 +728,7 @@ FN_SYNC: | ||||
| 
 | ||||
|         ; Exit | ||||
| 	LD A,(SYS_PAGE.COPY_RGADR) | ||||
| 	OUT (RGADR),A | ||||
| 	OUT (PORT_Y),A | ||||
| 	LD A,(SYS_PAGE.COPY_SLOT3) | ||||
| 	OUT (SLOT3),A | ||||
| .exit:	OR A | ||||
| @ -771,12 +770,14 @@ SCREEN_TABLES: | ||||
|         DB   9    ,   #F8 | ||||
|         DB   0 | ||||
| 
 | ||||
| ;.SCR:   DB	41,#F8,  3,#FC,  4,#FC,  7,#FC,  9,#F8,  0                 | ||||
| .INT:	 DB	40,#FC,  2,#FD,  6,#FC,  7,#FC,  9,#FC,  0 | ||||
| .INT_SC: DB	41,#F8,  1,#FD,  6,#FC,  7,#FC,  9,#F8,  0 | ||||
| .BLN:	 DB	41,#FC,  3,#FC,  4,#FC,  7,#FC,  9,#FC,  0 | ||||
| .SNC:	 DB	41,#FC,  3,#FC,  4,#FC,  7,#FC,  9,#FC,  0 | ||||
| .RES:	 DB	41,#F8,  3,#FE,  4,#FE,  7,#FE,  9,#F8,  0 | ||||
| ;.SCR:   DB	41,#F8,  3,#FC,  4,#FC,  7,#FC,  9,#F8,  0    | ||||
| 
 | ||||
| .INT:	 DB	40,#FC,	 2,#FD,	 6,#FC,	 7,#FC,	 9,#FC,	 0	;!TEST PENTAGON INT 2 ª¢ ¤à â¨ª               | ||||
| ;.INT:	 DB	40,#FC,	 1,#FD,	 1,#FC,	 1,#FD,	 21,#FC, 0	;!TEST PENTAGON INT 2 ª¢ ¤à â¨ª               | ||||
| .INT_SC: DB	41,#F8,	 1,#FD,	 6,#FC,	 7,#FC,	 9,#F8,	 0 | ||||
| .BLN:	 DB	41,#FC,	 3,#FC,	 4,#FC,	 7,#FC,	 9,#FC,	 0 | ||||
| .SNC:	 DB	41,#FC,	 3,#FC,	 4,#FC,	 7,#FC,	 9,#FC,	 0 | ||||
| .RES:	 DB	41,#F8,	 3,#FE,	 4,#FE,	 7,#FE,	 9,#F8,	 0 | ||||
| ;--------------------------------------- | ||||
| 
 | ||||
| ;--- Screen data tables 2: counter1, data address1 .. counterX, data addressX | ||||
|  | ||||
| @ -1,8 +1,6 @@ | ||||
| ;                                         | ||||
| ;---------[All shared defines]----------  | ||||
| 	DEFINE	DEBUG			1			; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥¨¥ ® â¥á⮢®© ᡮથ   áâ à⮢®¬ íªà ¥ | ||||
| 	DEFINE	NEW_FEATURE		0			; !TODO ¯ãªâë ¢ á¥â ¯ | ||||
| 	DEFINE	TEST_INT		1			; ’¥áâ®¢ë© ®¡à ¡®â稪 ¯®«ì§®¢ â¥«ì᪮£® INT | ||||
| 	DEFINE	PACKED_MAIN		0			; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®? | ||||
| 	DEFINE	SP2000_ConfID		#FEFF			;  | ||||
| 	DEFINE	IDE_Optimization	1			; á«¥£ª  ®¯â¨¬¨§¨àã¥â ¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD | ||||
| @ -10,14 +8,19 @@ | ||||
| 	DEFINE	Pashalki		0			;  | ||||
| 	DEFINE	PICTURE_FILE './src/bios/logo/psfathers.bmp' | ||||
| 
 | ||||
| 	DEFINE  RECOVERYrdChooseTYPE	1			; 1 - RECOVERY ¢á¥£¤  £à㧨âáï ¢ ¤¨áª 15, 2 - ¨é¥âáï ᢮¡®¤ë© à ¬¤¨áª ¨ ¥á«¨ â ª®£® ¥â, â® § ¨¬ ¥âáï 15ë© | ||||
| 	DEFINE  RECOVERYmountTYPE	1			; 1 - ¡ëáâàë© ¥¬®£® § å à¤ª®¦¥ë© ¢ à¨ â. 2 - ¡®«¥¥ "¯à ¢¨«ìë©" | ||||
| 
 | ||||
| 	DEFINE HDDwriteProtect		0 | ||||
| 
 | ||||
|  	; ‡ ¤¥à¦ª  ¢ ª ¤à å ¯®á«¥ ®âà¨á®¢ª¨ «®£®â¨¯  (0 = 256) | ||||
|  	DEFINE  LOGO_DELAY_MIN		25 | ||||
|  	DEFINE  LOGO_DELAY_NORM		100 | ||||
|  	DEFINE  LOGO_DELAY_MAX		130 | ||||
|         ; | ||||
| ; | ||||
| ;	[ TEST ] | ||||
| 	DEFINE	TEST_INT		1			; ’¥áâ®¢ë© ®¡à ¡®â稪 ¯®«ì§®¢ â¥«ì᪮£® INT | ||||
| 	DEFINE	NEW_FEATURE		0			; !TODO ¯ãªâë ¢ á¥â ¯ | ||||
| 	DEFINE	HDDwriteProtect		0 | ||||
| 	DEFINE  RECOVERYmountTYPE	1			; 1 - ¡ëáâàë© ¥¬®£® § å à¤ª®¦¥ë© ¢ à¨ â. 2 - ¡®«¥¥ "¯à ¢¨«ìë©" | ||||
| 	DEFINE  RECOVERYrdChooseTYPE	1			; 1 - RECOVERY ¢á¥£¤  £à㧨âáï ¢ ¤¨áª 15, 2 - ¨é¥âáï ᢮¡®¤ë© à ¬¤¨áª ¨ ¥á«¨ â ª®£® ¥â, â® § ¨¬ ¥âáï 15ë© | ||||
| 	DEFINE	FDD_NormalCount		0 | ||||
| ; | ||||
										
											Binary file not shown.
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Anatoliy Belyanskiy
						Anatoliy Belyanskiy