Itt pontosan mit is kell tenni az emulátornak? Az Xep128 forráskód szerint ez olvasható az 1-es regiszteren, és ennek az írásakor az 5. bit beállítása törli a lemezcserét:
case 1: // status reg: bit7=wp1, bit6=insert, bit5=changed
(insert/changed=1: some of the cards not inserted or changed)
Nos, a Xep128-ban valojaban tenyleg nincs olyan, hogy "nem inicializalt a kartya". Elfogadja azokat a parancsokat, amit ilyenkor szokas csinalni, de ezek hianyaban is mukodne, ami mondjuk persze sajna nem egyezik a valosaggal, de "fix" SD image eseten ez elvileg tul sok vizet nem zavar, ha az SDEXT amugy is tutira megcsinalja, akkor valodi gepen is megy. Az mas kerdes, hogy "hot swap" eseten persze jo, ha ez is tesztelheto ...
A 9-es parancsnál hiányzik még a lemez méretének a lekérdezése, ezt ugyan VHD megnyitásakor az emulátor kiszámítja, de jelenleg nem olvasható.
Marmint ez Xep128-ban - elvileg - benne van. Vagy ugy ertetted, hogy ep128emu-ban nincs? _size_calc() fuggveny modositja a _read_csd_answer tombot, amit a 9-es parancs visszaad aztan. A fenti fuggveny a sdext_check_and_set_size()-bol van hivva. Hmm ... ha minden igaz
Arra persze nem eskudnek meg, hogy ez igy tuti jo most, ahogy van. Ha jol remlik Zozo tesztelte (meg o is kerte ezt), es par probalkozas utan jonak tunt szerinte. *Ha* jol emlekszem
Ami megmaradt az az, hogy nagyokat karomkodtam magamban, hogy milyen pepecs munka a CSD valaszt atirni, meg az egesz meret dolgot csinalni