From 5448a82733313cbda9fd60ebbd301b253fdae193 Mon Sep 17 00:00:00 2001 From: Anatoliy Belyanskiy Date: Fri, 28 Jun 2024 00:41:38 +1000 Subject: [PATCH] ... --- BOOT/DSSBOOT.ASM | 164 +++++++++++++++++++++++------------------------ 1 file changed, 82 insertions(+), 82 deletions(-) diff --git a/BOOT/DSSBOOT.ASM b/BOOT/DSSBOOT.ASM index 352abf2..00892ce 100644 --- a/BOOT/DSSBOOT.ASM +++ b/BOOT/DSSBOOT.ASM @@ -14,11 +14,11 @@ MODULE DSS_Boot_Loader -; BIOS 3.06 ����㦠�� ���� ᥪ�� �����稪� � ��।��� ��� �ࠢ�����. +; BIOS 3.06 㦠 ᥪ 稪 । ࠢ. - ; 0 - �ਣ������ ��ਠ�� ����᪠ DSS, 1 - ��ਠ�� ������� + ; 0 - ਣ ਠ ᪠ DSS, 1 - ਠ DEFINE ORIGINAL_DSS 0 - ; 1 - �㤥� ��㧨�� ����� ������� � �᭮����. 0 - ⮫쪮 �᭮����. + ; 1 - 㤥 㧨 ᭮. 0 - ⮫쪮 ᭮. DEFINE UNIVERSAL_BOOT 1 ;------------------------------------------------------------------------------ @@ -43,7 +43,7 @@ DRIVE: _mSYSID ; LD SP,#C000 ; ; LD (DRIVE),A - ;[ ] 17.12.2023 ����㧪� � ��⨢���� ࠧ����, � �� � ��ࢮ�� + ;[ ] 17.12.2023 㧪 ⨢ ࠧ, ࢮ XOR A LD (DRIVE+1),A ; @@ -59,7 +59,7 @@ DRIVE: _mSYSID BIT 7,A JR Z,GOOD_DRIVE EX DE,HL - LD DE,2*256 + 21 ;!HARDCODE �᫨ ����� ���� 2.21, � �訡�� + LD DE,2*256 + 21 ;!HARDCODE ᫨ 2.21, 訡 SBC HL,DE LD HL,MESSAGES.INCORR RET C ; goto FAIL @@ -67,7 +67,7 @@ DRIVE: _mSYSID GOOD_DRIVE: LD DE,#8200 ;!HARDCODE LD HL,0 LD IX,2 - LD BC,LOAD_SECTORS*256 + BIOS.DRV_READ ; ������㧪� ᥪ�஢ �����稪� + LD BC,LOAD_SECTORS*256 + BIOS.DRV_READ ; 㧪 ᥪ஢ 稪 LD A,(DRIVE) RST ToBIOS_18 JP NC,CONTINUE @@ -164,7 +164,7 @@ CONTINUE: LD HL,0 ; LD HL,MESSAGES.NO_SYS RET C ; goto FAIL - ; [ ] ����㧪� system.dos ����� #4000 ���⮢ + ; [ ] 㧪 system.dos #4000 ⮢ LD HL,(FSIZE1) LD A,H OR L @@ -177,14 +177,14 @@ CONTINUE: LD HL,0 .set_no_size: LD (LOAD_CORE.BIG_CORE),A OR A PUSH AF - ; ����㧪� + ; 㧪 EXX LD HL,(FCLUSTER_H) EXX LD HL,(FCLUSTR_L) LD DE,#C000 CALL LOAD_CORE - ; [ ] ����㧪� system.dos ����� #4000 ���⮢ + ; [ ] 㧪 system.dos #4000 ⮢ EX AF,AF' POP AF JR Z,.no_big_core @@ -195,10 +195,10 @@ CONTINUE: LD HL,0 LD (LOAD_CORE.BANKDOS),A LD A,SUBLOAD_SIZE LD (LOAD_CORE.max_sectors),A - LD (LOAD_CORE.BIG_CORE),A ; ⥯��� �� ����稪 ��⠢���� ᥪ�஢ + LD (LOAD_CORE.BIG_CORE),A ; ⥯ 稪 ⠢ ᥪ஢ ; LD A,(BOOT_BUFFER + BOOT_SECTOR.SectorsPerCluster) - CP #20 + 1 ; !HARDCODE ���-�� ����㦠���� ᥪ�஢ + CP #20 + 1 ; !HARDCODE - 㦠 ᥪ஢ JP NC,INC_SECTOR_NUM ;CALL R_F_FAT ; next cluster in chain CALL READ_FROM_FAT ; next cluster in chain @@ -223,11 +223,11 @@ RUN_CORE: DI ; ;DOS LOADED ;IF UNIVERSAL_BOOT - ;[ ] 17.12.2023 ����㧪� � ��⨢���� ࠧ����, � �� � ��ࢮ�� - LD A,(DRIVE+1) ; ����� ࠧ���� + ;[ ] 17.12.2023 㧪 ⨢ ࠧ, ࢮ + LD A,(DRIVE+1) ; ࠧ LD L,A ; - LD A,(DRIVE) ; ����� ���ன�⢠ + LD A,(DRIVE) ; ன⢠ LD C,Dss.Version RST ToDSS JP C,FAIL.NULL @@ -260,7 +260,7 @@ RUN_CORE: DI ; LD A,(DRIVE) ; LD BC,Dss.BootDSK.Set ; RST ToDSS - ; LD B�,Dss.BootDSK.Get + ; LD B,Dss.BootDSK.Get ; ENDIF ;ENDIF ; @@ -286,7 +286,7 @@ RUN_CORE: DI ; INC_SECTOR_NUM: PUSH DE CALL CLUSTER_TO_SECTOR - LD DE,#20 ;!HARDCODE ������⢮ ���⠭��� ᥪ�஢ + LD DE,#20 ;!HARDCODE ⢮ ⠭ ᥪ஢ ADD IX,DE JR NC,.no_inc INC HL @@ -294,8 +294,8 @@ INC_SECTOR_NUM: PUSH DE POP DE LD BC,RUN_CORE PUSH BC - PUSH HL ; ��� ������ - PUSH HL ; ��� ������ + PUSH HL ; + PUSH HL ; JP LOAD_CORE.subload ; @@ -314,7 +314,7 @@ PART_TB: LD HL,(BOOT_BUFFER + BOOT_SECTOR.MBR_SIGNATURE) ;LD HL,YEPDOS ; .part_loop: LD A,(IX + _sMBR_PARTITION_RECORD.FS_ID) - ; ���� ��������� �����প� ��� ��᪮�쪨� ⨯�� ��, � �������� 1fs �� 2fs + ; প ᪮쪨 ⨯ , 1fs 2fs ; 1 CP PartitionSysTypes.FAT16_LBA JR Z,YEPDOS @@ -362,13 +362,13 @@ PART_TB: LD HL,(BOOT_BUFFER + BOOT_SECTOR.MBR_SIGNATURE) ; ; -YEPDOS: ;[ ] 17.12.2023 ����㧪� � ��⨢���� ࠧ����, � �� � ��ࢮ�� +YEPDOS: ;[ ] 17.12.2023 㧪 ⨢ ࠧ, ࢮ LD A,#80 CP (IX + _sMBR_PARTITION_RECORD.isActive) JR NZ,PART_TB.next - LD A,4 ;!HARDCODE ���稪 ����ᥩ ����権 � MBR + LD A,4 ;!HARDCODE 稪 ᥩ 権 MBR SUB B - PUSH AF ; ����� ����㧮筮�� ࠧ���� + PUSH AF ; 㧮筮 ࠧ ; LD L,(IX + _sMBR_PARTITION_RECORD.Start_LBA + 0) LD H,(IX + _sMBR_PARTITION_RECORD.Start_LBA + 1) @@ -382,10 +382,10 @@ YEPDOS: ;[ ] 17.12.2023 ����㧪� � ��⨢���� ࠧ�� LD DE,BOOT_BUFFER LD BC,1*256 + BIOS.DRV_READ RST ToBIOS_18 - ;[ ] 17.12.2023 ����㧪� � ��⨢���� ࠧ����, � �� � ��ࢮ�� + ;[ ] 17.12.2023 㧪 ⨢ ࠧ, ࢮ POP AF POP BC - LD L,A ; ����� ����㧮筮�� ࠧ���� + LD L,A ; 㧮筮 ࠧ LD A,C ; RET @@ -409,7 +409,7 @@ GET_BPB: LD HL,#0000 LD A,(DRIVE) RST ToBIOS_18 RET C - ; ��४��뢠��� ��� �����稪� �� 0 ᥪ�� + ; ४뢠 稪 0 ᥪ LD HL,BOOT_BUFFER + (_sBOOT_SECTOR.PARTITION_TABLE - ZERO_SECTOR_OF_BPB.Size) LD DE,ZERO_SECTOR_OF_BPB LD BC,ZERO_SECTOR_OF_BPB.Size @@ -423,7 +423,7 @@ GET_BPB: LD HL,#0000 JR NZ,.NX1 CALL PART_TB ;HDD RET C - ;[ ] 17.12.2023 ����㧪� � ��⨢���� ࠧ����, � �� � ��ࢮ�� + ;[ ] 17.12.2023 㧪 ⨢ ࠧ, ࢮ LD (DRIVE+1),HL ; .NX1: CP #00 @@ -534,7 +534,7 @@ GET_BPB: LD HL,#0000 JP NC,.loop3 .loop3.end: ; LD (FatBuffer.BytesPerCluster),HL - ; LD DE,#8001 ; �஢�ઠ �� ࠧ��� ������ ����� 32 �� - �� �����ন������ ; !TODO + ; LD DE,#8001 ; ஢ઠ ࠧ 32 - ন ; !TODO ; AND A ; SBC HL,DE ; CCF @@ -596,14 +596,14 @@ GET_BPB: LD HL,#0000 ; HL:DE = DataSec ; LD A,(FatBuffer.SectorsPerCluster) - ; HL:DE / A => DE:BC, H=0, L - ���⮪ + ; HL:DE / A => DE:BC, H=0, L - ⮪ ;CALL DIV_by_Shifts LD C,A DEC A JR Z,.DIV_exit ; AND E - LD B,A ; ���⮪ + LD B,A ; ⮪ LD A,C RRCA ; @@ -620,7 +620,7 @@ GET_BPB: LD HL,#0000 LD H,0 LD L,A ; - ; ����塞 ࠧ�來���� FAT + ; 塞 ࠧ來 FAT LD A,D OR E JR NZ,.its_FAT32 @@ -637,8 +637,8 @@ GET_BPB: LD HL,#0000 ; .its_FAT32: LD A,(BOOT_BUFFER + BOOT_SECTOR.MainFATnumber) CP #80 - JR C,.mirrored_FATs ;�᫨ �� ����� FAT �ᯮ������� - ; �ᯮ������ ⮫쪮 ���� ����� FAT + JR C,.mirrored_FATs ;᫨ FAT ᯮ + ; ᯮ ⮫쪮 FAT LD HL,(FatBuffer.FAT1_SEC_H) LD DE,(FatBuffer.SectorsPerFAT_H) LD D,0 @@ -717,7 +717,7 @@ CLUSTER_TO_SECTOR: ; -; ���� system.dos +; system.dos GETROOT: LD HL,(FatBuffer.RootDirFirstSector_H) LD IX,(FatBuffer.RootDirFirstSector_L) LD BC,(PARTITION_START_L) @@ -731,7 +731,7 @@ GETROOT: LD HL,(FatBuffer.RootDirFirstSector_H) LD A,(FatBuffer.DirSizeInSectors) JR NZ,.NEXTSEC ; - LD A,(FatBuffer.SectorsPerCluster);!FIXIT ������ ⮫쪮 ���� ������ ��⠫��� �� FAT32 + LD A,(FatBuffer.SectorsPerCluster);!FIXIT ⮫쪮 ⠫ FAT32 .NEXTSEC: PUSH AF ; [x] 28/04/2024. Bug with incorrect reading root dir. Reported by Roman "Romychs" Boykov. ;ADD IX,BC @@ -799,13 +799,13 @@ SEARCH: LD C,17 ;HANDELS PER SECTOR 512/32 + 1 LD BC,FAT_DIRECTORY_RECORD LDIR ; ZF = 1, CF = 0, A != 0 - AND A ; �� ��室� ZF = CF = 0 + AND A ; 室 ZF = CF = 0 RET ; HL - CLUSTER ; DE - ADDRESS -; !TODO ᤥ���� ��� ��।������ ࠧ��� SYSTEM.DOS -; [ ] � ����������� ����㧨�� ����� 1 ��࠭��� +; !TODO ᤥ । ࠧ SYSTEM.DOS +; [ ] 㧨 1 ࠭ LOAD_CORE: LD (READMEM),DE .loop: PUSH HL EXX @@ -859,7 +859,7 @@ LOAD_CORE: LD (READMEM),DE POP HL CCF RET NC - ; [ ] ����㧪� system.dos ����� #4000 ���⮢ + ; [ ] 㧪 system.dos #4000 ⮢ .BIG_CORE+1: LD A,0 DEC A @@ -878,14 +878,14 @@ LOAD_CORE: LD (READMEM),DE ; -; HL:DE / A => DE:BC, H=0, L - ���⮪ +; HL:DE / A => DE:BC, H=0, L - ⮪ ; DIV_by_Shifts: ; LD C,A ; DEC A ; JR Z,.DIV_exit ; ; ; AND E -; LD B,A ; ���⮪ +; LD B,A ; ⮪ ; LD A,C ; RRCA ; ; @@ -919,10 +919,10 @@ ZERO_SECTOR_OF_BPB: ; B = 0 GET_SECTOR_OF_FAT: LD A,(FatBuffer.FAT_TYPE) - LD B,FAT_CACHE.Degree_32 ;!FIXIT ᤥ���� �१ ��६����� + LD B,FAT_CACHE.Degree_32 ;!FIXIT ᤥ १ ६ XOR FAT_TYPE.x32 JR Z,.next - LD B,FAT_CACHE.Degree ;!FIXIT ᤥ���� �१ ��६����� + LD B,FAT_CACHE.Degree ;!FIXIT ᤥ १ ६ XOR A .next: LD C,A ; @@ -935,18 +935,18 @@ GET_SECTOR_OF_FAT: ; -;�室: HL - ����� ������ -;��室: HL - ���� �㦭�� �祩�� � ��࠭�� FATPAGE -; CF - ����/������ ���� ������ +;室: HL - +;室: HL - 㦭 祩 ࠭ FATPAGE +; CF - / GET_FAT12_CELL: LD D,H LD E,L SRL H - RR L ; ᤢ�� ��ࠢ� �१ CF - PUSH AF ; ���. 䫠� + RR L ; ᤢ ࠢ १ CF + PUSH AF ; . 䫠 ADD HL,DE ; CLUSTER * 1.5 ; IF FAT_CACHE.Size_12 < #1800 - ;!FIXIT ��⨬���஢��� + ;!FIXIT ⨬஢ LD A,H LD B,H ; @@ -965,12 +965,12 @@ GET_FAT12_CELL: LD D,H AND #07 ;AND FAT_CACHE.Part_Mask_16 ; - ; [ ] �������� �室 � ��楤��� READ_FAT_TABLE. ����� ����� ����� � ॣ. A ��।������ + ; [ ] 室 楤 READ_FAT_TABLE. ॣ. A । LD DE,(FatBuffer.CacheBlock) ; BC - BLOCK FAT IN CASH CP E LD E,A ; - CALL NZ,READ_FAT_TABLE ; ������ � ��� 16 ᥪ�஢ FAT-� + CALL NZ,READ_FAT_TABLE ; 16 ᥪ஢ FAT- ENDIF ; LD DE,FATPAGE.cache @@ -978,8 +978,8 @@ GET_FAT12_CELL: LD D,H POP AF RET ; -;�室: HL - ����� ������ -;��室: HL - ���� �㦭�� �祩�� � ��࠭�� FATPAGE +;室: HL - +;室: HL - 㦭 祩 ࠭ FATPAGE GET_FAT16_CELL: LD A,H LD B,H AND FAT_CACHE.Size_Mask_16 @@ -998,14 +998,14 @@ GET_FAT16_CELL: LD A,H LD E,A ; CALL NZ,READ_FAT_TABLE ; A != C - READ NEW BLOCK FAT - LD DE,FATPAGE.cache ; ��砫� ��� FAT-� - ADD HL,DE ; �� �祩�� FAT + LD DE,FATPAGE.cache ; 砫 FAT- + ADD HL,DE ; 祩 FAT RET ; ; ;RE_FAT: ;RX01 -; ������ � ��� �� ᥪ�஢ FAT-� +; ᥪ஢ FAT- ; DE - NEW FAT BLOCK READ_FAT_TABLE: PUSH HL ; @@ -1014,7 +1014,7 @@ READ_FAT_TABLE: PUSH HL ; CALL GET_SECTOR_OF_FAT ; - ; BC:HL - ����� ���.ᥪ�� + ; BC:HL - .ᥪ LD DE,(FatBuffer.FAT1_SEC_L) ADD HL,DE ; @@ -1052,9 +1052,9 @@ READ_FAT_TABLE: PUSH HL POP HL RET -;�室: HL':HL - ����� ������ -;��室: HL - ���� �㦭�� �祩�� � ��࠭�� FATPAGE -GET_FAT32_CELL: ; ������� ����� HL':H +;室: HL':HL - +;室: HL - 㦭 祩 ࠭ FATPAGE +GET_FAT32_CELL: ; HL':H LD A,H EXX LD C,A @@ -1063,13 +1063,13 @@ GET_FAT32_CELL: ; ������� ����� HL':H LD H,A LD A,C ; - LD B,FAT_CACHE.Degree ; 4 ᤢ��� + LD B,FAT_CACHE.Degree ; 4 ᤢ .loop_block: RLCA ; << H RL L ; << L' RL H ; << H' DJNZ .loop_block EXX - ; � �⮣� ��� � HL' ����� ����� FAT + ; ⮣ HL' FAT ; ; HL - FAT32 OFFSET (FROM CASH) LD A,H @@ -1086,20 +1086,20 @@ GET_FAT32_CELL: ; ������� ����� HL':H SBC HL,DE CALL NZ,READ_FAT_TABLE ; A != C - READ NEW BLOCK FAT POP HL - LD DE,FATPAGE.cache ; ��砫� ��� FAT-� - ADD HL,DE ; �� �祩�� FAT + LD DE,FATPAGE.cache ; 砫 FAT- + ADD HL,DE ; 祩 FAT RET ; ;------------------------------------------------------------------------------------------------ -; ������ �� ��� FAT-� ����� ᫥�. ������ -; �室: hl - ����� ������ (����襥 ᫮��) -; hl' - ����� ������ (���襥 ᫮��. ⮫쪮 ��� FAT32) -; ��室: hl - ����� ������ (����襥 ᫮��) -; hl' - ����� ������ (���襥 ᫮��) -; de - ����� ᫥�. ������ (����襥 ᫮��) -; de' - ����� ᫥�. ������ (���襥 ᫮��) -; �᫨ DE':DE = 0, � ������ HL':HL ᢮����� -; CF - ����� 楯�窨 +; FAT- ᫥. +; 室: hl - (襥 ᫮) +; hl' - (襥 ᫮. ⮫쪮 FAT32) +; 室: hl - (襥 ᫮) +; hl' - (襥 ᫮) +; de - ᫥. (襥 ᫮) +; de' - ᫥. (襥 ᫮) +; ᫨ DE':DE = 0, HL':HL ᢮ +; CF - 楯窨 ;------------------------------------------------------------------------------------------------ READ_FROM_FAT: PUSH HL ; @@ -1112,18 +1112,18 @@ READ_FROM_FAT: PUSH HL CP FAT_TYPE.x16 JR C,.FAT12 JR NZ,.FAT32 - ; fat16, ���� ���� ᫥�. ����� + ; fat16, ᫥. .FAT16: CALL GET_FAT16_CELL - LD E,(HL) ; ������ ����� ������ + LD E,(HL) ; INC HL LD D,(HL) ; LD HL,SERVICE_SECTORS.FAT16 .exit: POP AF OUT (SLOT3),A - ; ����塞 CF � ��⠭�������� ��� �訡�� = DssErr.sys.NO_ERROR + ; 塞 CF ⠭ 訡 = DssErr.sys.NO_ERROR XOR A - ; �஢�ઠ �� ��. ������� + ; ஢ઠ . SBC HL,DE POP HL EXX @@ -1143,7 +1143,7 @@ READ_FROM_FAT: PUSH HL JR NC,.Correct_2 .Correct_1: LD A,E AND #F0 - DUP 4 ; ��ࠢ� �� 4 ���a + DUP 4 ; ࠢ 4 a RR D RRA EDUP @@ -1160,12 +1160,12 @@ READ_FROM_FAT: PUSH HL EXX ; CALL GET_FAT32_CELL - ; ������ ����襥 ᫮�� ����� ������ + ; 襥 ᫮ LD E,(HL) INC HL LD D,(HL) INC HL - ; ������ ���襥 ᫮�� ����� ������ + ; 襥 ᫮ LD A,(HL) INC HL EX AF,AF' @@ -1176,12 +1176,12 @@ READ_FROM_FAT: PUSH HL EX AF,AF' LD E,A EXX - ; ����塞 CF � ��⠭�������� ��� �訡�� = DssErr.sys.NO_ERROR + ; 塞 CF ⠭ 訡 = DssErr.sys.NO_ERROR XOR A - ; �஢�ઠ �� ��. ������� ����襣� ᫮�� ������ + ; ஢ઠ . 襣 ᫮ LD HL,SERVICE_SECTORS.FAT32.Low SBC HL,DE - ; �஢�ઠ �� ��. ������� ���襣� ᫮�� ������ + ; ஢ઠ . 襣 ᫮ EXX LD HL,SERVICE_SECTORS.FAT32.High SBC HL,DE