Немига 303 boot M5: различия между версиями
Nzeemin (обсуждение | вклад) |
Nzeemin (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
= Загрузка на Немиге 4.05 = | == Загрузка на Немиге 4.05 == | ||
В дисководе MD0: вставлена дискета M5.DSK. | В дисководе MD0: вставлена дискета M5.DSK. | ||
<pre> | <pre> | ||
Строка 256: | Строка 257: | ||
Floppy0 SET STATE 0 OPER 000000 | Floppy0 SET STATE 0 OPER 000000 | ||
</pre> | </pre> | ||
== После чтения MD.SYS == | |||
<pre> | <pre> | ||
000650: RTI | 000650: RTI | ||
Строка 402: | Строка 404: | ||
</pre> | </pre> | ||
[[Категория:Немига]] |
Версия от 01:17, 30 января 2017
Загрузка на Немиге 4.05
В дисководе MD0: вставлена дискета M5.DSK.
Filename Blocks Date Start Bytes Trk Sec DskFileOffset Comment ---------- ------ --------- ----- -------- --- --- ------------- ---------- Boot Block 1 0 512 0 2 0000000000 MD BOOT Home Block 1 1 512 0 6 0000000200 Reserved 4 2 2048 0 10 Directory 2 6 1024 1 3 NEMIGA.SYS 73 18-Aug-99 8 37376 1 11 SWAP .SYS 26 18-Aug-99 81 13312 SL .SYS 10 18-Aug-99 107 5120 TT .SYS 2 18-Aug-99 117 1024 SG .SYS 6 18-Aug-99 119 3072 LP .SYS 2 18-Aug-99 125 1024 VM .SYS 2 18-Aug-99 127 1024 VN .SYS 3 18-Aug-99 129 1536 DAYSJ .SAV 4 18-Aug-99 132 2048 COPSYS.COM 1 18-Aug-99 136 512 MD .SYS 11 18-Aug-99 137 5632 23 21 PIP .SAV 23 18-Aug-99 148 11776 DIR .SAV 19 18-Aug-99 171 9728 DUP .SAV 45 18-Aug-99 190 23040 MF .SAV 3 18-Aug-99 235 1536 BASVN .SAV 63 18-Aug-99 238 32256 EDIKN .SAV 22 18-Aug-99 301 11264 RESORC.SAV 22 18-Aug-99 323 11264 NETVN .SAV 3 18-Aug-99 345 1536 TSTMD .SAV 11 18-Aug-99 348 5632 VN .COM 1 18-Aug-99 359 512 NETRW .SAV 2 18-Aug-99 360 1024 F10T1C.ASC 8 29-Sep-99 362 4096 COPY23.COM 1 30-Nov-99 370 512 < UNUSED > 12 371 6144 BRIF .BAK 6 29-Sep-99 383 3072 BRIF .TXT 6 29-Sep-99 389 3072 MITRPP.MAC 32 29-Sep-99 395 16384 < UNUSED > 32 427 16384 ---------- ------ --------- ----- -------- 27 files, 407 blocks
Запускаем машину, она загружается в Пульт, пользователь вводит команду D.
Загрузчик в ПЗУ
Floppy0 COMMAND 000030 Floppy0 SET STATE 1 OPER 000020 Floppy0 STEP OUT Floppy0 PREPARE TRACK 1 Floppy0 COMMAND 000030 Floppy0 SET STATE 1 OPER 000020 Floppy0 STEP OUT Floppy0 PREPARE TRACK 0 Floppy TRACK 00 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 17 POS0010 SC01 TR00 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 17 POS0010 SC01 TR00 Floppy0 READ a0 POS0140 SC02 TR00 Floppy0 READ 01 POS0270 SC03 TR00 Floppy0 READ c0 POS0400 SC04 TR00 Floppy0 READ 40 POS0530 SC05 TR00 Floppy0 READ 00 POS0660 SC06 TR00 Floppy0 READ ff POS0790 SC07 TR00 Floppy0 READ ff POS0920 SC08 TR00 Floppy0 READ ff POS1050 SC09 TR00 Floppy0 READ df POS1180 SC10 TR00 Floppy0 READ 03 POS1310 SC11 TR00 Floppy0 READ f7 POS1440 SC12 TR00 Floppy0 READ 37 POS1570 SC13 TR00 Floppy0 READ 17 POS1700 SC14 TR00 Floppy0 READ c3 POS1830 SC15 TR00 Floppy0 READ 2a POS1960 SC16 TR00 Floppy0 READ 72 POS2090 SC17 TR00 Floppy0 READ db POS2220 SC18 TR00 Floppy0 READ a0 POS2350 SC19 TR00 Floppy0 READ 04 POS2480 SC20 TR00 Floppy0 READ 04 POS2610 SC21 TR00 Floppy0 READ 64 POS2740 SC22 TR00 Floppy0 READ 20 POS2870 SC23 TR00 Floppy0 SET STATE 0 OPER 000000
Начальный загрузчик MD BOOT
000000: NOP 000002: BR 000036 000036: BR 000040 000040: MOV #010000, SP Floppy0 COMMAND 000070 Floppy0 READ 0b POS0530 SC05 TR00 Floppy0 SET STATE 1 OPER 000060 Floppy0 STEP IN Floppy0 PREPARE TRACK 1 Floppy0 COMMAND 000030 Floppy0 SET STATE 1 OPER 000020 Floppy0 STEP OUT Floppy0 PREPARE TRACK 0 Floppy TRACK 00 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 17 POS0010 SC01 TR00 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 17 POS0010 SC01 TR00 Floppy0 READ a0 POS0140 SC02 TR00 Floppy0 READ 01 POS0270 SC03 TR00 Floppy0 READ c0 POS0400 SC04 TR00 Floppy0 READ 40 POS0530 SC05 TR00 Floppy0 READ 00 POS0660 SC06 TR00 Floppy0 READ ff POS0790 SC07 TR00 Floppy0 READ ff POS0920 SC08 TR00 Floppy0 READ ff POS1050 SC09 TR00 Floppy0 READ df POS1180 SC10 TR00 Floppy0 READ 03 POS1310 SC11 TR00 Floppy0 READ f7 POS1440 SC12 TR00 Floppy0 READ 37 POS1570 SC13 TR00 Floppy0 READ 17 POS1700 SC14 TR00 Floppy0 READ c3 POS1830 SC15 TR00 Floppy0 READ 2a POS1960 SC16 TR00 Floppy0 READ 72 POS2090 SC17 TR00 Floppy0 READ db POS2220 SC18 TR00 Floppy0 READ a0 POS2350 SC19 TR00 Floppy0 READ 04 POS2480 SC20 TR00 Floppy0 READ 04 POS2610 SC21 TR00 Floppy0 READ 64 POS2740 SC22 TR00 Floppy0 READ 20 POS2870 SC23 TR00 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000070 Floppy0 SET STATE 1 OPER 000060 Floppy0 STEP IN Floppy0 PREPARE TRACK 1 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 00 POS0010 SC01 TR01 Floppy0 READ 00 POS0140 SC02 TR01 Floppy0 READ 01 POS0270 SC03 TR01 Floppy0 READ fe POS0400 SC04 TR01 Floppy0 READ 16 POS0530 SC05 TR01 Floppy0 READ 01 POS0660 SC06 TR01 Floppy0 READ ff POS0790 SC07 TR01 Floppy0 READ ff POS0920 SC08 TR01 Floppy0 READ ff POS1050 SC09 TR01 Floppy0 READ ff POS1180 SC10 TR01 Floppy0 READ 00 POS1310 SC11 TR01 Floppy0 READ 00 POS1440 SC12 TR01 Floppy0 READ 00 POS1570 SC13 TR01 Floppy0 READ 00 POS1700 SC14 TR01 Floppy0 READ df POS1830 SC15 TR01 Floppy0 READ 03 POS1960 SC16 TR01 Floppy0 READ f7 POS2090 SC17 TR01 Floppy0 READ 37 POS2220 SC18 TR01 Floppy0 READ 17 POS2350 SC19 TR01 Floppy0 READ c3 POS2480 SC20 TR01 Floppy0 READ 2a POS2610 SC21 TR01 Floppy0 READ 72 POS2740 SC22 TR01 Floppy0 READ db POS2870 SC23 TR01 Floppy0 SET STATE 0 OPER 000000 Переход до дорожки 23 Floppy0 PREPARE TRACK 23 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 00 POS0010 SC01 TR23 Floppy0 READ 00 POS0140 SC02 TR23 Floppy0 READ 00 POS0270 SC03 TR23 Floppy0 READ 00 POS0400 SC04 TR23 Floppy0 READ 32 POS0530 SC05 TR23 Floppy0 READ 0a POS0660 SC06 TR23 Floppy0 READ 2d POS0790 SC07 TR23 Floppy0 READ 81 POS0920 SC08 TR23 Floppy0 READ 30 POS1050 SC09 TR23 Floppy0 READ f7 POS1180 SC10 TR23 Floppy0 READ 0e POS1310 SC11 TR23 Floppy0 READ 41 POS1440 SC12 TR23 Floppy0 READ 30 POS1570 SC13 TR23 Floppy0 READ 59 POS1700 SC14 TR23 Floppy0 READ 20 POS1830 SC15 TR23 Floppy0 READ 00 POS1960 SC16 TR23 Floppy0 READ 49 POS2090 SC17 TR23 Floppy0 READ 00 POS2220 SC18 TR23 Floppy0 READ 00 POS2350 SC19 TR23 Floppy0 READ 00 POS2480 SC20 TR23 Floppy0 READ 00 POS2610 SC21 TR23 MD.SYS sector 1, длиной 44 сектора Floppy0 READ 00 POS2740 SC22 TR23 MD.SYS sector 2 Floppy0 READ 00 POS2870 SC23 TR23 MD.SYS sector 3 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000070 Floppy0 SET STATE 1 OPER 000060 Floppy0 STEP IN Floppy0 PREPARE TRACK 24 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 00 POS0010 SC01 TR24 MD.SYS sector 4 Floppy0 READ 00 POS0140 SC02 TR24 MD.SYS sector 5 Floppy0 READ 37 POS0270 SC03 TR24 MD.SYS sector 6 Floppy0 READ 20 POS0400 SC04 TR24 MD.SYS sector 7 Floppy0 READ 2e POS0530 SC05 TR24 MD.SYS sector 8 Floppy0 READ 38 POS0660 SC06 TR24 MD.SYS sector 9 Floppy0 READ 0b POS0790 SC07 TR24 MD.SYS sector 10 Floppy0 READ 94 POS0920 SC08 TR24 MD.SYS sector 11 Floppy0 READ d8 POS1050 SC09 TR24 MD.SYS sector 12 Floppy0 READ 01 POS1180 SC10 TR24 MD.SYS sector 13 Floppy0 READ 00 POS1310 SC11 TR24 MD.SYS sector 14 Floppy0 READ 00 POS1440 SC12 TR24 MD.SYS sector 15 Floppy0 READ 00 POS1570 SC13 TR24 MD.SYS sector 16 Floppy0 READ 00 POS1700 SC14 TR24 MD.SYS sector 17 Floppy0 READ 00 POS1830 SC15 TR24 MD.SYS sector 18 Floppy0 READ 00 POS1960 SC16 TR24 MD.SYS sector 19 Floppy0 READ 00 POS2090 SC17 TR24 MD.SYS sector 20 Floppy0 READ 00 POS2220 SC18 TR24 MD.SYS sector 21 Floppy0 READ 00 POS2350 SC19 TR24 MD.SYS sector 22 Floppy0 READ 00 POS2480 SC20 TR24 MD.SYS sector 23 Floppy0 READ 00 POS2610 SC21 TR24 MD.SYS sector 24 Floppy0 READ 00 POS2740 SC22 TR24 MD.SYS sector 25 Floppy0 READ 00 POS2870 SC23 TR24 MD.SYS sector 26 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000070 Floppy0 SET STATE 1 OPER 000060 Floppy0 STEP IN Floppy0 PREPARE TRACK 25 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ 00 POS0010 SC01 TR25 MD.SYS sector 27 Floppy0 READ 00 POS0140 SC02 TR25 MD.SYS sector 28 Floppy0 READ 00 POS0270 SC03 TR25 MD.SYS sector 29 Floppy0 READ 00 POS0400 SC04 TR25 MD.SYS sector 30 Floppy0 READ 00 POS0530 SC05 TR25 MD.SYS sector 31 Floppy0 READ 00 POS0660 SC06 TR25 MD.SYS sector 32 Floppy0 READ 00 POS0790 SC07 TR25 MD.SYS sector 33 Floppy0 READ 00 POS0920 SC08 TR25 MD.SYS sector 34 Floppy0 READ 00 POS1050 SC09 TR25 MD.SYS sector 35 Floppy0 READ 00 POS1180 SC10 TR25 MD.SYS sector 36 Floppy0 READ 00 POS1310 SC11 TR25 MD.SYS sector 37 Floppy0 READ 00 POS1440 SC12 TR25 MD.SYS sector 38 Floppy0 READ d8 POS1570 SC13 TR25 MD.SYS sector 39 Floppy0 READ 4e POS1700 SC14 TR25 MD.SYS sector 40 Floppy0 READ 06 POS1830 SC15 TR25 MD.SYS sector 41 Floppy0 READ 0a POS1960 SC16 TR25 MD.SYS sector 42 Floppy0 READ 00 POS2090 SC17 TR25 MD.SYS sector 43 Floppy0 READ 00 POS2220 SC18 TR25 MD.SYS sector 44 -- конец Floppy0 READ 00 POS2350 SC19 TR25 Floppy0 READ 00 POS2480 SC20 TR25 Floppy0 READ 00 POS2610 SC21 TR25 Floppy0 READ 00 POS2740 SC22 TR25 Floppy0 READ 42 POS2870 SC23 TR25 ... 000600: MOV (R5), R0 000602: CLR (R5) Floppy0 SET STATE 0 OPER 000000
После чтения MD.SYS
000650: RTI 000416: MOV #040146, R5 000422: MOV (SP)+, R3 000424: BEQ 000434 000434: MOV #000100, R4 000440: MOV (SP)+, R3 000442: MOV (SP)+, R2 000444: MOV (R5)+, (R2)+ 000446: DEC (SP) 000450: BEQ 000464 000452: SOB R4, 000444 ... Крутится цикл 000444-000452 ... 000454: INC R3 000456: MOV R2, -(SP) 000460: MOV R3, -(SP) 000462: BR 000274 000274: CLR R1 000276: MOV #040012, R5 000302: MOV #000120, R4 000306: CLR R2 000310: BISB (R5)+, R2 000312: MOV R1, R0 000314: ADD R2, R1 000316: CMP R1, (SP) 000320: BHI 000330 000322: SOB R4, 000306 ... Крутится цикл 000306-000322 ... 000330: MOV (SP), -(SP) 000332: SUB R0, (SP) 000334: SUB #000120, R4 000340: MOV 000124, R1 000344: ADD R4, R1 000346: BEQ 000416 000416: MOV #040146, R5 000422: MOV (SP)+, R3 000424: BEQ 000434 000426: ADD #000202, R5 000432: SOB R3, 000426 000434: MOV #000100, R4 000440: MOV (SP)+, R3 000442: MOV (SP)+, R2 000444: MOV (R5)+, (R2)+ 000446: DEC (SP) 000450: BEQ 000464 000452: SOB R4, 000444 ... Крутится цикл 000444-000452 ... ... 000450: BEQ 000464 000464: TST (SP)+ 000466: RETURN 003544: MOV (SP)+, R0 003546: MOV (SP)+, R1 003550: MOV (SP)+, R2 003552: MOV (SP)+, R3 003554: MOV (SP)+, R4 003556: MOV (SP)+, R5 003560: RETURN 002042: BLO 001774 002044: MOV R2, R5 002046: ADD #000176, R5 002052: CALL 003632 003632: MOV @#000004, 003666 003640: MOV #003442, @#000004 003646: MOV @#000010, 003674 003654: MOV #003442, @#000010 003662: CALL @(SP)+ 002056: TST @(R5)+ 002060: NOP 002062: BLO 002110 002064: TST (R5)+ ; R5=145200, (R5)=000000 002066: BEQ 002076 ; Это условие НЕ сработало в 4.05 002076: ADD #177656, R5 002102: CMP (R5), 004776 002106: BEQ 002116 002116: CALL @(SP)+ 003664: MOV #000000, @#000004 003672: MOV #000000, @#000010 003700: RETURN Переход до дорожки 2 Floppy0 PREPARE TRACK 2 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ a0 POS0010 SC01 TR02 Floppy0 READ 04 POS0140 SC02 TR02 Floppy0 READ 04 POS0270 SC03 TR02 Floppy0 READ 64 POS0400 SC04 TR02 Floppy0 READ 20 POS0530 SC05 TR02 Floppy0 READ 00 POS0660 SC06 TR02 Floppy0 READ 00 POS0790 SC07 TR02 Floppy0 READ ea POS0920 SC08 TR02 Floppy0 READ 10 POS1050 SC09 TR02 Floppy0 READ c0 POS1180 SC10 TR02 Floppy0 READ 69 POS1310 SC11 TR02 Floppy0 READ 00 POS1440 SC12 TR02 Floppy0 READ 09 POS1570 SC13 TR02 Floppy0 READ 00 POS1700 SC14 TR02 Floppy0 READ ff POS1830 SC15 TR02 Floppy0 READ 1f POS1960 SC16 TR02 Floppy0 READ fd POS2090 SC17 TR02 Floppy0 READ c6 POS2220 SC18 TR02 Floppy0 READ 61 POS2350 SC19 TR02 Floppy0 READ 24 POS2480 SC20 TR02 Floppy0 READ d0 POS2610 SC21 TR02 Floppy0 READ ce POS2740 SC22 TR02 Floppy0 READ f0 POS2870 SC23 TR02 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000070 Floppy0 SET STATE 1 OPER 000060 Floppy0 STEP IN Floppy0 PREPARE TRACK 3 Floppy0 COMMAND 000010 Floppy0 SET STATE 1 OPER 000000 Floppy0 READ b5 POS0010 SC01 TR03 Floppy0 READ 02 POS0140 SC02 TR03 Floppy0 READ 66 POS0270 SC03 TR03 Floppy0 READ f7 POS0400 SC04 TR03 Floppy0 READ c2 POS0530 SC05 TR03 Floppy0 READ c4 POS0660 SC06 TR03 Floppy0 READ 82 POS0790 SC07 TR03 Floppy0 READ 0b POS0920 SC08 TR03 Floppy0 READ 80 POS1050 SC09 TR03 Floppy0 READ 00 POS1180 SC10 TR03 Floppy0 READ 01 POS1310 SC11 TR03 Floppy0 READ 51 POS1440 SC12 TR03 Floppy0 READ c1 POS1570 SC13 TR03 Floppy0 READ 00 POS1700 SC14 TR03 Floppy0 READ d2 POS1830 SC15 TR03 Floppy0 READ 48 POS1960 SC16 TR03 Floppy0 READ c5 POS2090 SC17 TR03 Floppy0 READ cd POS2220 SC18 TR03 Floppy0 READ f7 POS2350 SC19 TR03 Floppy0 READ 03 POS2480 SC20 TR03 Floppy0 READ 42 POS2610 SC21 TR03 Floppy0 READ fb POS2740 SC22 TR03 Floppy0 READ f4 POS2870 SC23 TR03 Floppy0 SET STATE 0 OPER 000000 Floppy0 COMMAND 000070 Floppy0 SET STATE 1 OPER 000060 Floppy0 STEP IN Floppy0 PREPARE TRACK 4