mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-16 01:41:17 +03:00
BOOT: Fixed a bug that caused the inability to boot from a FAT32 partition.
This commit is contained in:
parent
fb13b0231b
commit
fba891fcf5
@ -40,7 +40,7 @@ LOADER_IN_BPB:
|
||||
DRIVE: _mSYSID
|
||||
DI
|
||||
; ;!TEST 26/03/2024
|
||||
; LD SP,#C000
|
||||
LD SP,#C000
|
||||
; ;
|
||||
LD (DRIVE),A
|
||||
;[ ] 17.12.2023 § £à㧪 á ªâ¨¢®£® à §¤¥« , ¥ á ¯¥à¢®£®
|
||||
@ -131,9 +131,9 @@ PRINTX: CP "\r" ;
|
||||
;R01 End
|
||||
|
||||
MESSAGES:; 0 10 20 30 40 50 60 70 80
|
||||
.FAILURE: DB "\r\nFatal error! Press RESET to restart.\r\n",0
|
||||
.INCORR: DB "\r\nOld BIOS version.\r\n",0
|
||||
.ERRPART: DB "\r\nUnknown partition table.",0
|
||||
.FAILURE: DB "\r\nFatal error! Press RESET to restart.\r\n",0
|
||||
.ERRIBPB: DB "\r\nInvalid BOOT sector.",0
|
||||
.NO_SYS: DB "\r\nCan't open SYSTEM.DOS...",0
|
||||
.NOSHELL: DB "\r\nCan't open SYSTEM.EXE...",0
|
||||
@ -401,7 +401,8 @@ GET_BPB: XOR A
|
||||
;[ ] 17.12.2023 § £à㧪 á ªâ¨¢®£® à §¤¥« , ¥ á ¯¥à¢®£®
|
||||
LD (DRIVE+1),HL
|
||||
;
|
||||
.NX1: CP #00
|
||||
.NX1: ;CP #00
|
||||
AND A
|
||||
JR NZ,.NX2
|
||||
;
|
||||
; SET_PRM if FDD
|
||||
|
||||
@ -80,6 +80,7 @@
|
||||
DEFINE EXEinfoMACRO 0
|
||||
DEFINE App_EXE_Version 1
|
||||
MACRO _mEXEinfo
|
||||
IF EXEinfoMACRO
|
||||
BLOCK 10,' ' ; ‚ëà ¢¨¢ ¨¥ ¤«ï ªà ᨢ®£® ®â®¡à ¦¥¨ï ¢ HEX
|
||||
BYTE ' Bootloader '
|
||||
BYTE ' installer '
|
||||
@ -88,13 +89,14 @@
|
||||
BYTE ' Anatoliy '
|
||||
BYTE ' Belyanskiy. '
|
||||
BYTE ' Sprinter Team, '
|
||||
BYTE ' 2024 '
|
||||
BYTE ' 2025 '
|
||||
ENDIF
|
||||
ENDM
|
||||
|
||||
|
||||
; ¢¥àá¨ï ¯à®£à ¬¬ë
|
||||
major_version equ 2 ; áâ. ®¬¥à ¢¥àᨨ
|
||||
minor_version equ 1 ; ¬«. ®¬¥à
|
||||
major_version equ 3 ; áâ. ®¬¥à ¢¥àᨨ
|
||||
minor_version equ 0 ; ¬«. ®¬¥à
|
||||
;;
|
||||
SECTORS_OF_LOADER EQU 4 ; ᥪâ®à®¢ § £àã§ç¨ª
|
||||
.IN_BPB EQU 1
|
||||
@ -636,7 +638,7 @@ messages: db 0
|
||||
db (minor_version / 10) + '0',(minor_version % 10) + '0','.'
|
||||
db "\r\nBuild date ",SYS_BUILD_DATE
|
||||
db "\r\nCopyright (c) 2006 Vasil Ivanov."
|
||||
db "\r\nCopyright (c) 2023-2024 Sprinter Team."
|
||||
db "\r\nCopyright (c) 2023-2025 Sprinter Team."
|
||||
db "\r\n\n",0
|
||||
;
|
||||
db "System successfully installed on disk " ;1
|
||||
|
||||
@ -205,7 +205,7 @@ PORTAL.out_DRV: PUSH BC
|
||||
POP AF
|
||||
.ADCALL+1: CALL DISPATCH ; ¯ âç¨âáï INTDISK
|
||||
JR NC,PORTAL.out_DRV
|
||||
XOR DSS_Error.DRV_MASK
|
||||
OR DSS_Error.DRV_MASK
|
||||
SCF
|
||||
JP PORTAL.out_DRV
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@ -186,7 +186,6 @@ NMI_0x66: RETN ;JP NMI ;
|
||||
;
|
||||
RST_10: PUSH HL
|
||||
LD L,C
|
||||
|
||||
IF SHORT_RSTx10_TABLE
|
||||
;[ ] R09
|
||||
LD H,A
|
||||
@ -405,7 +404,7 @@ DSS_API_TABLE: ;DS 512 ;,0
|
||||
INCLUDE "DOS_Proc.asm"
|
||||
INCLUDE "FS_Module.asm"
|
||||
INCLUDE "Procedures.asm"
|
||||
|
||||
;INCLUDE "drivers/drv_to_sys_errors.asm" ; !TODO
|
||||
|
||||
; [ ] 26/06/2024& read only 64kb cluster ; !TODO cluster 64kb
|
||||
CHECK_64kb_CLUSTER:
|
||||
|
||||
@ -1 +1 @@
|
||||
33
|
||||
34
|
||||
76
DSS/drivers/DRV_TO_SYS_ERRORS.ASM
Normal file
76
DSS/drivers/DRV_TO_SYS_ERRORS.ASM
Normal file
@ -0,0 +1,76 @@
|
||||
; 19/04/2025 ¢â®¯¥à¥¢®¤ ®¬¥à ®è¨¡ª¨ DRV/BIOS ¢ SYS
|
||||
DRV_ERROR_TO_SYS:
|
||||
RET NC
|
||||
RLA
|
||||
JR NC,.no_correction
|
||||
;
|
||||
PUSH HL
|
||||
PUSH AF
|
||||
;
|
||||
SRL A
|
||||
CP .Size
|
||||
LD HL,.TABLE
|
||||
ADD A,L
|
||||
JR NC,.no_inc
|
||||
;
|
||||
INC H
|
||||
.no_inc: LD L,A
|
||||
LD L,(HL)
|
||||
POP AF
|
||||
LD A,L
|
||||
POP HL
|
||||
RET
|
||||
;
|
||||
.no_correction: RRA
|
||||
RET
|
||||
|
||||
.TABLE: DB DSS_Error.sys.Unknown_Error ;BIOS.Error.NoErrors ; 0
|
||||
DB DSS_Error.sys.INVALID_FUNCTION ;BIOS.Error.InvalidSubFunction ; 1
|
||||
DB DSS_Error.sys.INVALID_DRIVE ;BIOS.Error.BadNumber ; 2
|
||||
DB DSS_Error.sys.UNKNOWN_FORMAT ;BIOS.Error.UnknownDevice ; 3
|
||||
DB DSS_Error.sys.NOT_READY ;BIOS.Error.NotReady ; 4
|
||||
DB DSS_Error.sys.SEEK_ERROR ;BIOS.Error.Seek ; 5
|
||||
DB DSS_Error.sys.SECTOR_NOT_FOUND ;BIOS.Error.SectorNotFound ; 6
|
||||
DB DSS_Error.sys.CRC_ERROR ;BIOS.Error.CRC ; 7
|
||||
DB DSS_Error.sys.WRITE_PROTECT ;BIOS.Error.WriteProtect ; 8
|
||||
DB DSS_Error.sys.READ_ERROR ;BIOS.Error.Read ; 9
|
||||
DB DSS_Error.sys.WRITE_ERROR ;BIOS.Error.Write ; 10
|
||||
DB DSS_Error.sys.DRIVE_FAILURE ;BIOS.Error.Failure ; 11
|
||||
DB DSS_Error.sys.BUSY_NO_MEDIA ;BIOS.Error.Busy ; 12
|
||||
DB DSS_Error.sys.Unknown_Error ;#8D ; 13
|
||||
DB DSS_Error.sys.Unknown_Error ;#8E ; 14
|
||||
DB DSS_Error.sys.Unknown_Error ;#8F ; 15
|
||||
DB DSS_Error.sys.Unknown_Error ;#90 ; 16
|
||||
DB DSS_Error.sys.Unknown_Error ;#91 ; 17
|
||||
DB DSS_Error.sys.Unknown_Error ;#92 ; 18
|
||||
DB DSS_Error.sys.Unknown_Error ;#93 ; 19
|
||||
DB DSS_Error.sys.Unknown_Error ;#94 ; 20
|
||||
DB DSS_Error.sys.Unknown_Error ;#95 ; 21
|
||||
DB DSS_Error.sys.Unknown_Error ;#96 ; 22
|
||||
DB DSS_Error.sys.Unknown_Error ;#97 ; 23
|
||||
DB DSS_Error.sys.Unknown_Error ;#98 ; 24
|
||||
DB DSS_Error.sys.Unknown_Error ;#99 ; 25
|
||||
DB DSS_Error.sys.Unknown_Error ;#9A ; 26
|
||||
DB DSS_Error.sys.Unknown_Error ;#9B ; 27
|
||||
DB DSS_Error.sys.Unknown_Error ;#9C ; 28
|
||||
DB DSS_Error.sys.Unknown_Error ;#9D ; 29
|
||||
DB DSS_Error.sys.Unknown_Error ;#9E ; 30
|
||||
DB DSS_Error.sys.NOT_SUPPORTED ;BIOS.Error.NotSupported ; 31
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI.NoSence ; 32
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI.RecoveredError; 33
|
||||
DB DSS_Error.sys.NOT_READY ;BIOS.Error.ATAPI.NotReady ; 34
|
||||
DB DSS_Error.sys.BUSY_NO_MEDIA ;BIOS.Error.ATAPI.MediumError ; 35
|
||||
DB DSS_Error.sys.DRIVE_FAILURE ;BIOS.Error.ATAPI.HardwareError ; 36
|
||||
DB DSS_Error.sys.INVALID_ACCESS ;BIOS.Error.ATAPI.IllegalRequest; 37
|
||||
DB DSS_Error.sys.MEDIA_CHANGED ;BIOS.Error.ATAPI.UnitAttention ; 38
|
||||
DB DSS_Error.sys.ACCESS_DENIED ;BIOS.Error.ATAPI.DataProtect ; 39
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI; ; 40
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI; ; 41
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI; ; 42
|
||||
DB DSS_Error.sys.NOT_READY ;BIOS.Error.ATAPI.AbortedCommand; 43
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI; ; 44
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI; ; 45
|
||||
DB DSS_Error.sys.WRITE_ERROR ;BIOS.Error.ATAPI.Miscompare ; 46
|
||||
DB DSS_Error.sys.Unknown_Error ;BIOS.Error.ATAPI; ; 47
|
||||
DB DSS_Error.sys.NOT_READY ;BIOS.Error.ATAPI.TimeOut ; 48
|
||||
.Size EQU .TABLE - $
|
||||
@ -1 +1 @@
|
||||
503
|
||||
504
|
||||
@ -1 +1 @@
|
||||
Subproject commit 5a36cbee9ca6df7f7c1008fed7f242d0a505bc50
|
||||
Subproject commit 040541dcbc42338505524aae36b43aecca4dee47
|
||||
Loading…
Reference in New Issue
Block a user