Frost-DOS Zp

O
̋ZṕA2D ݂̂ΏۂƂB


gbNAZN^P
  VXefBXN
    PDTr=0 (IPL)
        E1Sec = 256Byte
        E1Tr  = 16Sec = 4,096Byte

    QDTr=1 ` 83iGgAFATAf[^j
        ESec=1`5F1Sec = 1,024Byte
        ESec=6   F1Sec = 512Byte
        E1Tr = 6Sec =  1,024 * 5 { 512 = 5,632Byte
        AFrost-DOSł͘_ZN^TCY 512ByteƂA
        1Tr = 11LSec = 512 * 11 = 5,632Byte ƍlB

    RDDISK 1 = 4,096Byte + (83TrS * 5,632Byte)
             = 4,096Byte + 467,456Byte
             = 471,552Byte


  f[^fBXN
    PDTr=0 ` 83iGgAFATAf[^j
        ESec=1`5F1Sec = 1,024Byte
        ESec=6   F1Sec = 512Byte
        E1Tr = 6Sec =  1,024 * 5 { 512 = 5,632Byte
        AFrost-DOSł͘_ZN^TCY 512ByteƂA
        1Tr = 11LSec = 512 * 11 = 5,632Byte ƍlB

    QDDISK 1 = 84TrS * 5,632Byte
             = 473,088Byte

  f[^gbN̘_ZN^ƕZN^Ή͉L̂Ƃ
      ZN^                _ZN^
      Sec=1 0x000`0x1FF(511)   LSec=1
      Sec=1 0x200`0x3FF(1023)  LSec=2
      Sec=2 0x000`0x1FF(511)   LSec=3
      Sec=2 0x200`0x3FF(1023)  LSec=4
      Sec=3 0x000`0x1FF(511)   LSec=5
      Sec=3 0x200`0x3FF(1023)  LSec=6
      Sec=4 0x000`0x1FF(511)   LSec=7
      Sec=4 0x200`0x3FF(1023)  LSec=8
      Sec=5 0x000`0x1FF(511)   LSec=9
      Sec=5 0x200`0x3FF(1023)  LSec=10
      Sec=6 0x000`0x1FF(511)   LSec=11





Frost-DOS tH[}bgʕ@
  VXefBXN̂
    Tr=0 Sec=1 (LSec=1)
    offset 0000H ` 000FH ܂ł̐擪16oCgȓɁA
    yFrost-DOSz ̋Lqݒ肳B

  VXefBXNEf[^fBXN
    Tr=37 Sec=1`2 ReadAReadTCY 2048Byte ŁA
    offset 032EH(814) ` 0343H(835) iTr=37̃ZN^Sāj
     0xFE ̃VXe\̈ ƂȂĂ邱ƁB





fBNgGg
  Tr=37 Sec=3 ` 6 (LSec=5 ` 11) ܂ŁB

  EfBNgGgt@C offset 0000H ` 0DFFH (LSec=6Ō܂)
    Pt@C = 16Byte (0x10) gpB
    fBNgGg̍ői[t@C 224 ܂ŁB
    ܂AP̃t@C̃Gg̐擪 offset 0000H  0x00 ̎́A
    ̃t@C͍폜ĂB

       0000H:폜tO         0009H:t@C^Cv
       +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F
0000H  65 6E 64 69 6E 67 20 20 20 00 0A 06 01 00 02 1B | ending   .......
       ~~~~~~~~~~~~~~~~~ ~~~~~~~~ ~~ ~~ ~~ ~~~~~ ~~~~~ 000EH`000FH:t@CTCY
       t@C     gq           START ADDR
                                     JngbNԍ
                                        Jn_ZN^ԍ

  0000H: 폜tO
        0x00: 폜ꂽt@C
        ȊO: t@C̐擪PځB

  0000H`0005H: t@C
       ő 6oCgŁAXy[Xw艻B
       t@C̏Iȍ~̓Xy[X 0x20 Ŗ߂B

  0006H`0008H: gq
       ő 3oCgŁAXy[XAXy[X݂̂w艻B
       gq̏Iȍ~̓Xy[X 0x20 Ŗ߂B

  0009H: t@C^Cv
        0x00: BASIC
        0x01: }ViBINj
        0x02: RGBt@C

  000AH: JngbNԍ
       t@Cf[^i[ĂJngbNԍ

  000BH: JnZN^ԍ
       t@Cf[^i[ĂJn_ZN^ԍ

  000CH`000DH: START ADDRESS
       gGfBAŕێB

  000EH`000FH: FILE SIZE
       gGfBAŕێB





e`s
  Tr=37 Sec=1 ` 2 (LSec=1 ` 4) ܂ŁB

  2Byte = 1LSec ƂAe_ZN^̎̓ǂݍ݃ZN^
  gbNԍ 1ByteA_ZN^ԍ 1Byte Œ`ĂB
  _ZN^́A Tr=0 LSec=1ATr=0 LSec=2A...ATr=0 LSec=11ATr=1 LSec=1A...
  ̏ɁA擪 0000H ` 0737HiTr=37 LSec=4  0137Hj ܂Ŋi[B
  (S 924LSec)

  i[l
    gbN(1Byte)F0x00 ` 0x53  ̘_ZN^̂gbNԍ
    ZN^  (2Byte)F0x01 ` 0x0B  ̘_ZN^̃ZN^ԍ

    gbNEZN^
      0xFDF̘_ZN^Ńt@C̏I
      0xFEFVXe\̈
      0xFFF󂫘_ZN^

    FATw_ZN^̃f[^ǂݎĂāA
    gbN 0xFD ɂȂ_
    ǎ抮f[^FILE SIZE ؂oēǂݍ݊B


jLAending t@C̏ꍇ́ATr=0A(10) LSec=06 ̂߁A
    FATi[ꏊ́A
      10(Tr=0`Tr=9) * 11(Lsec) * 2(Tr+LSec) + 05(LSec) * 2(Tr+LSec)
      = 220 + 10 = 230
      = Tr37 Lsec=1  230oCg = 00E6H JnB

       +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F
00E0H  FD FD 0A 05 FD FD 0A 07 0A 0B 0A 09 0A 0A FD FD
                         ~~~~~ ~~~~~
00F0H  0B 01 0B 02 0B 03 0B 04 0B 05 0B 06 0B 07 0B 08
       ~~~~~ ~~~~~ ~~~~~ ~~~~~ ~~~~~ ~~~~~ ~~~~~ ~~~~~
0100H  0B 09 0B 0A 0C 04 0C 01 0C 02 0C 03 FD FD FD FD
       ~~~~~ ~~~~~ ~~~~~                         ~~~~~

L̏ꍇAgpĂ_ZN^́A擪A
PDTr=10 LSec=6iJnj
QDTr=10 LSec=7
RDTr=10 LSec=11
SDTr=11 LSec=1
TDTr=11 LSec=2
UDTr=11 LSec=3
VDTr=11 LSec=4
WDTr=11 LSec=5
XDTr=11 LSec=6
10DTr=11 LSec=7
11DTr=11 LSec=8
12DTr=11 LSec=9
13DTr=11 LSec=10
14DTr=12 LSec=4 i0xFD ̂߁A̘_ZN^ŏIj

ƂȂAFILE SIZE  1B02 = 6,914ByteA
6,914 / 512 = 13LSec + 258 ̂߁A
Tr=12 LSec=4  0101H ܂łt@Cf[^ƂȂB


fBXN
  e`s`IATr=37 LSec=4  0140H  017FH 
  64Byte  fBXNƂĐݒ肳B
  iAfBXN̓VXefBXN̂ݎgpj


ȏ
