SpeccyWeb

Jsme MB Maniax. Je třeba dodávat něco navíc?

1. 9. 2008

TrueWare - aktuální stav

Dnes se Zilog uvolil a poslal na Speccy konferenci na Pandoře rutinku, která provádí Read/Write na IDE zařízení. S jeho svolením jí zde uveřejníme.

Zde je...

Vstupy:

;HL = target address
;B = number of sectors
;E = sector (or LBA[7-0])
;D = cyl-low (or LBA[15-8])
;C = cyl-high (or LBA[23-16])
;A = head etc. (or LBA[28-24])

;bit A.7=A.5=1
;bit A.4=device (0=master, 1=slave)
;bit A.6=CHS/LBA (0=CHS, 1=LBA)
;CY=operation (1=write, 0=read)

Jen na objasněnou (to co mi nebylo hned jasné):

- bit 7 a 5 reg. 'a' musí být nastaveny na 1
- carry flagem se určuje read/write
- reg. 'b' určuje počet cektorů, které chceme najednou načíst

readsec: out ($bb),a
        r1: in a,($bf)
        bit 6,a
        jr z,r1
        ld a,b
        out ($ab),a
        ld a,e
        out ($af),a
        ld a,d
        out ($b3),a
        ld a,c
        out ($b7),a
        ld a,$20
        jr nc,r2
        ld a,$30
r2:     out ($bf),a
        push af
r3:     in a,($bf)
        and $c8
        cp $48
        jr nz,r3
        pop af
        push bc
        ld bc,$a3
        jr nc,r4
        otir
        otir
        jr r5
r4:     inir
        inir
r5:     pop bc
        djnz r3
r6:     in a,($bf)
        rla
        jr c,r6
        ret


Tak a teď k aktuálnímu stavu prográmku TrueWare.

Jelikož jsem celý program skoro celý přepsal jsem téměř na začátku.

Funguje:

- načte se MBR sektor
- zjistí se info o první partition
- načte se první sektor FAT tabulky
- zjistí se první datový sektor

Chybí:

- hledání volného clusteru ve FAT tabulce (rozpracováno, chybí táááákhle malinko :) )
- samotný zápis těla souboru
- zápis hlavičky soubru
- uložení FAT tabulky

Zítra snad budu mít první předvedení - schopnou verzi :)

Teď už snad vše půjde rychleji...

Komentáře: 9:

  • V 01.09.08 18:08 , Blogger sweet128 řekl...

    A co nějaký výběr adresáře? To bude kde/kdy? Když už FAT16, tak komplet.

     
  • V 01.09.08 18:40 , Blogger Shrek řekl...

    Ja ti to reknu takhle:

    Ja jsem si stanovil cil ulozit soubor na Fat16 (a pak ho zpatky precist). Udelat k tomu nejakou nadstavbu taky zvladnu...

    Ale adresare nepotrebuji, nechci a nebudu podporovat.

    Odpovim tvymi slovy, kterymi odpovidas casto Wixetovi: Na netu jsou (budou) zdrojaky, dodelej si to :)

     
  • V 01.09.08 19:20 , Anonymous Z řekl...

    jen takovy maly dotaz - funguje ta rutina? psal jsem to z hlavy rovnou do pandory, spectrum to nevidelo :>

     
  • V 01.09.08 20:03 , Blogger Shrek řekl...

    Ja se k tomu jeste nedostal :)

    Jen jsem procistoval stavajici code a prizpusoboval jsem to k te tvoji rutince...

    Takze zitra dam vedet.

     
  • V 01.09.08 20:57 , Blogger sweet128 řekl...

    Tak holt to po tobe dodelam, no.

     
  • V 01.09.08 21:10 , Blogger Shrek řekl...

    Sweet128: tomu rikam nadseni ;)

    Ale iniciative se meze nekladou :)

    Zeptej se Logouta, od zacatku jsme rikali, ze na adresare serem ;)

     
  • V 04.09.08 18:29 , Blogger Shrek řekl...

    Tak mi 3 dny blbne PeC a ne a ne se nastartovat (ted pisu z prace), tak nemuzu pokracovat.

    Vcera vecer (kolem pulnoci) je problem s ovladaci gr. karty nvidia a novym Xorg... takze po vikendu budu pokracovat (jelikoz o viekndu se jedu rekreaovat :) )

    vsem se omlouvam ze to tak dlouho trva, ale PC svet je proti me... :)

     
  • V 19.09.08 12:27 , Blogger hood řekl...

    Mirdo, kua, tesim se na Trueware jak svina, dej pak vedet, jak s tim valcis....

     
  • V 30.10.08 19:23 , Anonymous z. řekl...

    jinac ta rutina je prepsana blbe, skakat se ma djnzem pred ten push, of coz, jinak se vypopuje stck - ale to hadam kazdy ponjal

     

Okomentovat

Přihlášení k odběru Komentáře k příspěvku [Atom]

<< Domovská stránka