new ide detecting procedures
This commit is contained in:
		
							parent
							
								
									3acb1a76ff
								
							
						
					
					
						commit
						32b684103d
					
				| @ -137,7 +137,9 @@ SS_SECT	EQU	#3E | ||||
|  ENDM | ||||
| 
 | ||||
| /////////////////////////////////////////////////////////////////////[v] | ||||
| START:	IN	A,(SLOT3) | ||||
| START:	CALL	SetUP_CHANELS | ||||
| 	; | ||||
| 	IN	A,(SLOT3) | ||||
| 	EX	AF,AF' | ||||
| 	LD	A,SYS_PAGE | ||||
| 	OUT	(SLOT3),A | ||||
| @ -379,17 +381,7 @@ IDESPEC: | ||||
| 	LD	(IY+IDE.HDD_INIT_TABLE.DriveType),A	 | ||||
| 	CP	IDE.Device.CDROM | ||||
| 	JP	Z,.FOR_CDR | ||||
| ; 	;Check write caching | ||||
| ; 	LD	A,(TEMP+85*2)						; !TODO ᤥ« âì ç¥à¥§ áâàãªâãàã. ‚ª«îç¥ «¨ ªíè § ¯¨á¨? | ||||
| ; 	AND	%0010'0000 | ||||
| ; 	JR	Z,.NoWriteCache | ||||
| ; 	;Disable write caching | ||||
| ; 	LD	BC,IDE.Write.Features | ||||
| ; 	LD	A,IDE.ATA.SetFeatures.DisableWriteCache | ||||
| ; 	OUT	(C),A | ||||
| ; 	LD	A,IDE.ATA.SetFeatures | ||||
| ; 	CALL	IDE_CMD | ||||
| ; .NoWriteCache: | ||||
| 	; | ||||
| 	LD	BC,IDE.Read.Control | ||||
| 	IN	A,(C) | ||||
| 	AND	#F0 | ||||
| @ -721,8 +713,12 @@ DETECTORS: | ||||
| .NOP_Check:	LD	E,IDE.ATA.Nop | ||||
| 		LD	BC,IDE.Write.Command | ||||
| 		OUT	(C),E | ||||
| 		DEC	B			; LD BC, IDE.Read.Status | ||||
| 		 | ||||
| 		PAUSE_DJNZ 0 | ||||
| 		 | ||||
| 		LD	HL,PAUSES.HALT.SMALL | ||||
| 		LD	BC,IDE.Read.Status | ||||
| 		;DEC	B | ||||
| 		; | ||||
| .loop:		IN	A,(C) | ||||
| 		SCF | ||||
| @ -821,6 +817,32 @@ DETECTORS: | ||||
| /////////////////////////////////////////////////////////////////////[^] | ||||
| 
 | ||||
| 
 | ||||
| /////////////////////////////////////////////////////////////////////[v] | ||||
| SetUP_CHANELS: | ||||
| 	LD	A,1 | ||||
| 	CALL	.CMD | ||||
| 	LD	A,3 | ||||
| 	CALL	.CMD | ||||
| 	LD	A,0 | ||||
| 	CALL	.CMD | ||||
| 	LD	A,2 | ||||
| .CMD:	CALL	SELECT_IDE | ||||
| 	LD	BC,IDE.Write.Command | ||||
| 	LD	H,IDE.ATA.Nop | ||||
| 	OUT	(C),H | ||||
| 	PAUSE_DJNZ 32 | ||||
| 	; Disable INTRQ | ||||
| 	; LD	BC,IDE.Write.DeviceControl | ||||
| 	; LD	A,%0000'0010 | ||||
| 	; OUT	(C),A | ||||
| 	; PAUSE_DJNZ 32 | ||||
| 	; ; | ||||
| 	; CALL	DisableStandBy | ||||
| 	; PAUSE_DJNZ 32 | ||||
| 	RET | ||||
| /////////////////////////////////////////////////////////////////////[^] | ||||
| 
 | ||||
| 
 | ||||
| /////////////////////////////////////////////////////////////////////[v] | ||||
| ; DisableWriteCache: | ||||
| ; 	LD	BC,IDE.Write.Features | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Anatoliy Belyanskiy
						Anatoliy Belyanskiy