BOOT: добавлена команда x86 в загрузчике JMP $ чтоб на PC всё зависало если кто захочет загрузиться

This commit is contained in:
Tolik 2025-04-25 23:21:55 +10:00
parent a8d7de8517
commit abe9889012
2 changed files with 41 additions and 12 deletions

View File

@ -370,12 +370,13 @@ write_to_floppy:
sbc hl,de sbc hl,de
ret c ret c
overwrite_floppy: overwrite_floppy:
; ¯¥à¥ª¨¤ë¢ ­¨¥ ç á⨠§ £àã§ç¨ª  ¢ 0 ᥪâ®à CALL SETUP_ZERO_SECTOR
LD HL,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.physical ;; ¯¥à¥ª¨¤ë¢ ­¨¥ ç á⨠§ £àã§ç¨ª  ¢ 0 ᥪâ®à
LD DE,buffer + (_sBOOT_SECTOR.PARTITION_TABLE - DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size) ;LD HL,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.physical
LD BC,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size ;LD DE,buffer + (_sBOOT_SECTOR.PARTITION_TABLE - DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size)
LDIR ;LD BC,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size
; ;LDIR
;;
; § ¯¨á âì boot-ᥪâ®à ­ § ¤ ; § ¯¨á âì boot-ᥪâ®à ­ § ¤
ld a,(disk) ; § ¤ ­­ë© ­®¬¥à ¤¨áª  ld a,(disk) ; § ¤ ­­ë© ­®¬¥à ¤¨áª 
ld hl,0 ; áâ. à §àï¤ «®£. ᥪâ®à  ld hl,0 ; áâ. à §àï¤ «®£. ᥪâ®à 
@ -467,11 +468,15 @@ write_to_hard_disk:
; ;
JR write_to_BPB.no_push JR write_to_BPB.no_push
write_to_BPB: PUSH BC write_to_BPB: PUSH BC
; ¯¥à¥ª¨¤ë¢ ­¨¥ ç á⨠§ £àã§ç¨ª  ¢ 0 ᥪâ®à .no_push: CALL SETUP_ZERO_SECTOR
.no_push: LD HL,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.physical ;; ¯¥à¥ª¨¤ë¢ ­¨¥ ç á⨠§ £àã§ç¨ª  ¢ 0 ᥪâ®à
LD DE,buffer + (_sBOOT_SECTOR.PARTITION_TABLE - DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size) ;LD HL,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.physical
LD BC,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size ;LD DE,buffer + (_sBOOT_SECTOR.PARTITION_TABLE - DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size)
LDIR ;LD BC,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size
;LDIR
;; § é¨â  ®â ¡ ª« ­¨§¬  (§ £à㧪  á í⮣® ¤¨áª  ­  PC ¯à¨¢¥¤¥â ª § ¢¨á ­¨î. JMP $)
;LD HL,#FEEB ; opcode jmp $
;LD (buffer),HL
; § ¯¨áì ¢ 0 ᥪâ®à ªã᪠ § £àã§ç¨ª  ; § ¯¨áì ¢ 0 ᥪâ®à ªã᪠ § £àã§ç¨ª 
pop af ; § ¤ ­­ë© ­®¬¥à ¤¨áª  pop af ; § ¤ ­­ë© ­®¬¥à ¤¨áª 
ld hl,0 ; áâ. à §àï¤ «®£. ᥪâ®à  ld hl,0 ; áâ. à §àï¤ «®£. ᥪâ®à 
@ -539,6 +544,18 @@ Read_MBR: LD HL,0
SBC HL,DE SBC HL,DE
SCF SCF
RET RET
SETUP_ZERO_SECTOR:
; ¯¥à¥ª¨¤ë¢ ­¨¥ ç á⨠§ £àã§ç¨ª  ¢ 0 ᥪâ®à
LD HL,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.physical
LD DE,buffer + (_sBOOT_SECTOR.PARTITION_TABLE - DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size)
LD BC,DSS_Boot_Loader.ZERO_SECTOR_OF_BPB.Size
LDIR
; § é¨â  ®â ¡ ª« ­¨§¬  (§ £à㧪  á í⮣® ¤¨áª  ­  PC ¯à¨¢¥¤¥â ª § ¢¨á ­¨î. JMP $)
LD HL,#FEEB ; opcode jmp $
LD (buffer),HL
RET
;------------------------------------------------- ;-------------------------------------------------
; ‚뤥«¨âì § ¤ ­­ë© ¤¨áª ¨§ ª®¬-áâப¨ ; ‚뤥«¨âì § ¤ ­­ë© ¤¨áª ¨§ ª®¬-áâப¨
; ;

View File

@ -14,11 +14,23 @@
[ ] ¡«®ª¨à®¢ª  ä ©«®¢ ¢ ä ©«®¢ëå ¬ ­¨¯ã«ïâ®à å (ç⮡ ­¥ ®âªà뢠âì ­  § ¯¨áì 㦥 ®âªàëâë© ­  § ¯¨áì ä ©«, ­ ¯à¨¬¥à) [ ] ¡«®ª¨à®¢ª  ä ©«®¢ ¢ ä ©«®¢ëå ¬ ­¨¯ã«ïâ®à å (ç⮡ ­¥ ®âªà뢠âì ­  § ¯¨áì 㦥 ®âªàëâë© ­  § ¯¨áì ä ©«, ­ ¯à¨¬¥à)
‘।­¥¥: ‘।­¥¥:
[x] ¯¥à¥¤ à¥áª ­®¬ ¤à ©¢®¢ ¯à®¢¥àïâì ®âªàëâë¥ åí­¤«ë ¨ ¥á«¨ ¡ãª¢  ¤¨áª  ¬¥­ï¥âáï, â® ¬¥­ïâì ¤à ©¢ ¢ åí­¤«¥ [x] ¯¥à¥¤ à¥áª ­®¬ ¤à ©¢®¢ ¯à®¢¥àïâì ®âªàëâë¥ åí­¤«ë ¨ ¥á«¨ ¡ãª¢  ¤¨áª  ¬¥­ï¥âáï, â® ¬¥­ïâì ¤à ©¢ ¢ åí­¤«¥
[ ] ­ ç âì à ¡®â âì á äã­ªæ¨ï¬¨ REMOVABLE ¨ MEDIA CHECK rst #18. ‚®§¢à é âì §­ ç¥­¨¥ #FF, ¥á«¨ ¯®à冷ª ¡ãª¢ ¨§¬¥­¨«áï [?] ­ η βμ ΰ ΅®β βμ α δγ­<CEB3>ζ¨ο¬¨ REMOVABLE ¨ MEDIA CHECK rst #18. ‚®§Άΰ ι βμ §­ η¥­¨¥ #FF, ¥α«¨ ―®ΰ冷<C2A4> ΅γ<CE85>Ά ¨§¬¥­¨«αο
‚®®¡é¥ ­¥ ¢ ¦­®¥: ‚®®¡é¥ ­¥ ¢ ¦­®¥:
[ ] ¨á¯à ¢¨âì ¢ë室 ¨§ ä㭪樨 #41 ¯à¨ ¢®§¬®¦­®¬ 㢥«¨ç¥­¨¨ ­®¬¥à  â áª¨ ­  1 ¯à¨ 255 [ ] ¨á¯à ¢¨âì ¢ë室 ¨§ ä㭪樨 #41 ¯à¨ ¢®§¬®¦­®¬ 㢥«¨ç¥­¨¨ ­®¬¥à  â áª¨ ­  1 ¯à¨ 255
----------------------------------------------------------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------------------------------------------------------
DSS 1.71.35
<EFBFBD>§¬¥­¥­¨ο ―®α«¥ Ά¥ΰᨨ 1.70.2
- ¤®α ¨ ΅¨®α ¬®£γβ γαβ ­ Ά«¨Ά βμ § η¥¬-⮠०¨¬ txt 40x32 ¨ ­®ΰ¬ «μ­® Ά ­ρ¬ ΆλΆ®¤¨βμ β¥<CEB2>αβ
- LOADDIR:fix ¬γα®ΰ Ά αβΰ ­¨ζ¥ <20> β «®£ , ¥α«¨ <20> β «®£ ¬¥­μθ¥ αβΰ ­¨ζλ
- DiskINF: <20>®αβλ«μ ¤«ο  βਡγβ  0. <20> αβ®ο« ‘ Ά¥«¨©)). …᫨ Ά <20>®ΰ­¥ ΰ ­μθ¥ ¬¥β<C2A5>¨ ¤¨α<C2A8>  ―®― ¤ «αο δ ©« α  βਡγ⮬ 0, β® δγ­<CEB3>ζ¨ο Ά®§Άΰ ι «  ¥£® ¨¬ο <20> <EFBFBD> ¬¥β<C2A5>γ ¤¨α<C2A8> 
- ―ΰ®ζ¥¤γΰ  § γα<CEB3>  EXE ¬®£«  § «¥§βμ ­¥ Ά βγ ― <C2A0>γ ―¥ΰ¥¤ ―¥ΰ¥¤ η¥© γ―ΰ Ά«¥­¨ο § γα<CEB3> ¥¬®¬γ ―ਫ®¦¥­¨ξ α Ά¥ΰᨥ© EXE = 0 Ά § £®«®Ά<C2AE>¥
- ATAPI γαβΰ®©αβΆ® Άα¥£¤  ―®«γη ¥β ΅γ<CE85>Άγ, ¤ ¦¥ ΅¥§ ­®α¨β¥«ο
- <20>΅ΰ ΅ βλΆ ¥βαο ®θ¨΅<C2A8>  "ᬥ­  ­®α¨β¥«ο"
- δ ©« ­¥ α®§¤ αβαο, ¥α«¨ ­¥β αΆ®΅®¤­®£® ¬ ­¨―γ«οβ®ΰ 
- ―®¬¥­ο« <20>Ά ¤ΰ β¨<CEB2> <20>γΰα®ΰ  Ά <20>®­α®«¨ ¤«ο ०¨¬  OVR (<28>®β®ΰλ© ―®α«¥ ­ ¦ β¨ο ­  Ins)
- <20>¥«<C2A5>¨¥ ―ΰ Ά<C2A0>¨, ΰξθ¥η<C2A5>¨, ΅ £δ¨<CEB4>αλ ­¥γ―®¬ο­γβλ¥ Ά ν⮬ α―¨α<C2A8>¥ ―® ―ΰ¨η¨­¥  ¬­¥§¨¨ ¨ ε « β­®αβ¨
DSS 1.70.2 DSS 1.70.2
ˆ§¬¥­¥­¨ï ¯®á«¥ ¢¥àᨨ 1.70 ˆ§¬¥­¥­¨ï ¯®á«¥ ¢¥àᨨ 1.70