8bit ISA expander QuadRAM Quadboard

Počítače stolní, notebooky, tablety, tiskárny, scanery a vše, co nějak souvisí s PC

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Zaky
Příspěvky: 6129
Registrován: 30 říj 2010, 02:00
Bydliště: Praha

#16 Příspěvek od Zaky »

Ta paměť bude nejspíš natvrdo destruktivně pálená, ta si na nějaké zapomínání obsahu hrát nebude. Myslím, že pokud vyčteš obsah a uvidíš, že se liší podle adresování, tzn nejsou žádná data v trvalé úrovni (odstřelený výstup), nebo se neopakují patterny dat v průběhu adresování (odstřelený adresní vstup), tak budeš mít jistotu, že pamět žije. Ten návod, co jsem dával, je na jiný typ paměti, pozor na to, ber to jen jako ideu, adresování a výstupní data musíš nadrátovat podle skutečného typu. Tahle paměť je navíc jen čtyřbitová, tak ty vyšší 4b dat nadrátuj pro programátor trvale na zem.
Krátce před tím, než se to rozbilo, tak to ještě fungovalo...

Uživatelský avatar
pepik9
Příspěvky: 2239
Registrován: 31 srp 2010, 02:00

#17 Příspěvek od pepik9 »

Zas až tolik se v tom nevyznám, můj názor je, že se ten port aktivuje až ovladači. Ta deska byla ve verzích I, II, a III. V manuálu ke III se píše, že umožňuje současný tisk až na třech tiskárnách současně.
Disketa k II,
k I,

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#18 Příspěvek od nixdorf »

Nie nie, ten QuadMaster je iba podporný datadisk, ktorý má dobové utility pre RAM drive, zaraďovač tlače (spooler) - ten si podrží data pre tlačiarne v RAM, to je to čo píšu že "umožní až tri naraz" (na karte je iba jeden paralelný radič).
Plus, je tam BASIC skript (QUADTEST.BAS) coby diagnostika karty, lenže v ňom ten "test" paralelného interfejsu je iba že to vyšle pár bajtov na pripojenú tlačiareň. Tým, že karta nemá pridelenú bázovú adresu LPT, nezafunguje ani priamo OUT opkód 8088 na daný port. Tie som prešrotil hneď, 3BC, 378 a 278, z nich fungoval iba ten prvý, ktorý bol nafix na Herkulovi.

Toto sú stroje, ktoré ešte toho času nepodporovali plug and play a adresy sa nastavovali ručne cez jumpery a switche, tzn. človek musel poznať architektúru svojho stroja, ale zato drivery nebolo treba. Sériový a paralelný interface enumeruje BIOS v pôvodnom PC a skenuje ich bázové adresy počas POST a zavesí ich do BDA, na adrese 400 je napr. hodnota bázovej adresy COM1, 40A je hodnota adresy pre LPT2, a podobne. I tie som skúšal nafejkovať cez debug ručne, ale jasné že som si tým nepomohol - paralelný radič karty tým, že nemá priradenú bázovú adresu, nereaguje na povely portov zbernice.
Ako píšem - sériák na tej karte funguje na blink, rovnakým nasvičovaním podľa návodu ako paralel.

Známy sa mi ozval, že vyhrabal podobný kombo ISA expander, tak skúsim ten... táto Quadboard mi minimálne ostane v prípade, že tam budú nejaké vadné RAM, všetko sú to 4164 200ns. No alebo budem mať smolu a paralelné rozhranie nepôjde ani tam :D

Uživatelský avatar
Zaky
Příspěvky: 6129
Registrován: 30 říj 2010, 02:00
Bydliště: Praha

#19 Příspěvek od Zaky »

Už jsem zkoušel hledat, bohužel neúspěšně, jak vlastně BIOS ten LPT detekuje, to by při zkoumání dost pomohlo. Bude to souviset s tím zacvičením, co ti zapráská v Covoxu.
Krátce před tím, než se to rozbilo, tak to ještě fungovalo...

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#20 Příspěvek od nixdorf »

Enumerácia paralelných interface je v technickej referencii od IBM, disasembly System BIOS (stať 5-45) na PDF strane 138, ofset E53C. Najskôr sa enumerujú LPT, potom COM.
Pre LPT sa iba vyšle bajt AA na skúmaný port z tabulky na adrese CS:BP a následne sa ihneď prečíta. Ak je stále AA, bázová adresa existuje; inak nie. To je celé. Do repráku covoxu teda jeden prásk - a ak karta na danej adrese zbernice fyzicky "nepočúva", tak je tam ticho po pěšině.
Počas detekcie je v BP ofset F4 (PRT_SRC_TBL), strana 141 ofset E63D. V tejto tabulke sú tri 16bit wordy, 3BC, 378, 278, čiže testuje sa presne v tomto poradí a len tieto tri konkrétne bázové adresy. To znamená - "nájde" LPT u 3BC a 378, ergo, LPT1 je Herkul, LPT2 je klasika. Ak nenájde nič, v BDA ostanú nuly.
Akonáhle nabootuje DOS, ten si pozrie BDA na adrese 400 a podľa toho ich namapuje na LPTx, kde X je od 1 po 3, počnúc prvou "platnou" bázovou adresou.

Nech je IBM akokoľvek odporný korporátny moloch, PC architektúru ponechal svojho času otvorenú a dobre zdokumentovanú, nie jak neskorší jablíčkovský konkurent či tento bohom zabudnutý quadovský hergotsakrament, ktorý má na sebe vyše švábov jak samotná matičná doska pomaly :lol:

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#21 Příspěvek od nixdorf »

... máme radosť :)
Přílohy
IMG_20221020_102331.jpg

Uživatelský avatar
Zaky
Příspěvky: 6129
Registrován: 30 říj 2010, 02:00
Bydliště: Praha

#22 Příspěvek od Zaky »

Gratuluji, kde byl problém?
Krátce před tím, než se to rozbilo, tak to ještě fungovalo...

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#23 Příspěvek od nixdorf »

Nalejeme si čistého vína, ako to už ostatne prezrádza screenshot - použil som inú expander kartu. Ale na Quadboard sa nezabudlo - v systéme je 704K RAM, čo oficiálne prvé PC nepodporovali - ergo 256K na matičnej doske, 256K na náhradnej karte a 192K Quadboard, kde je ešte dodatočne povolený funkčný sériový radič. Takto to funguje, keďže monochrom adaptér adresuje až od adresy B8000, akurát som musel kúskom kódu upraviť BDA po INT 19h, pretože BIOS POST prešrotí podľa DIP svičov iba maximálne 640K (a u úplne prvých PC s bugom v BIOSe, iba 544K). O refresh tejto vyššej časti RAM cez kanál časovača PIT by nemal byť problém, keďže ofset 640-704K pôvodne zaberá videoram CGA/EGA/VGA.
Som si na 60-70% istý, že ak by som tú pôvodnú PROM vedel skusmo nahradiť duplikátom, alebo mal aspoň bitovú mapu a vedel vypáliť druhú, tak sa adresa toho paralelného radiču na pôvodnej karte priradí.
Nevadí, i tak som spokojný.

Uživatelský avatar
Zaky
Příspěvky: 6129
Registrován: 30 říj 2010, 02:00
Bydliště: Praha

#24 Příspěvek od Zaky »

Tak zkus tu drátovačku do programátoru, čistě ze studijních důvodů to stojí za vyzkoušení. U paralelních pamětí jde jen o generování adres a čtení dat, takže je vlastně úplně jedno, o jakou konkrétní paměť se jedná. V podstatě potřebuješ pouze znát pinout čtené a simulované paměti.
Krátce před tím, než se to rozbilo, tak to ještě fungovalo...

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#25 Příspěvek od nixdorf »

Akonáhle nastúpia dlhé zimné večery a nebude do čoho zabrdnúť, pokúsim sa ju "zbastliť" a uvidíme, čo bude mojim výstupom - dám vedieť. Diky

Uživatelský avatar
petula
Příspěvky: 836
Registrován: 22 kvě 2016, 02:00
Bydliště: Čelákovice / Brandýs n.L / Stará Boleslav
Kontaktovat uživatele:

#26 Příspěvek od petula »

:arrow: nixdorf tak karta dle fotky na str. 1 dole není nijak složitá. Je to klasika. Taková se krásně dá opravit. Schema ani netřeba. Zapojení 8255 je známé, zapojení výst. LPT konektoru a ISA také. Stačí ti logická TTL sonda a tzv. "štafličky", což je prodlužovací deska do ISA, kterou zasuneš do ISA slotu v PC a na konec štafliček dáš tvojí desku. To aby jsi k desce pěkně mohl. Je vcelku jedno jestli 8-bit adaptér strčíš do pouze 8-bit slotu nebo do 16-bit slotu, kde 16-bit rozšíření nevyužiješ.

Pak si uděláš třeba v ASM prográmeček, který bude posílat něco na LPT port , spustíš prográmeček a TTL sondou budeš testovat piny obvodů na desce.
Mimochodem, ta volná patice vpravo u výst. konektoru, to je co? Něco tam chybí...
Protože obvody jsou TTL a v paticích, můžeš je vytahnout, dát do nepájivého pole a otestovat TTL sondou zda fungují. Jestli nemáš pulzní TTL generátor, zbastli si nějaký jednoduchý třeba z 555.

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#27 Příspěvek od nixdorf »

No, vida. Tak ti tú kartu pošlem a môžeš mi ju opraviť, keď je to tak trivialne.

Do 5150 štaflík nezasuniem, pretože má (oproti PC/XT) užší rozostup slotov a ešte k tomu ich má iba 5 - pričom mi treba aspoň 2 z nich na to, aby som mohol normálne nabootovať, teda na floppy radič a idealne aj videokartu, nech mám ten luxus vidieť, čo robím.
Alebo môžem vynechať oboje, do päťkolíku zapojiť kazeťák, naštartovať ROM BASIC a tam, poslepiačky, zbúchať nejaké POKE v nekonečnej slučke. To si tiež príliš nepomôžem, pretože sa karte nepriradí bázová adresa. Ako presne funguje x86 OUT opkód na úrovni 8088, a ako sa probujú adresy zbernice, to som zatiaľ ešte neskúmal.

Ano, obvody jsou v paticích, pretože som ich odtial vlastnoručne odletoval a osádzal po jednom DIL patice a následne do testera; po odskúšaní vrátil do patice; - sprvoti začal som tými LO, u ktorých som mal predpoklad, že budú mať do činenia s adresovaním po zbernici. Takouto vylučovacou metodou som zasoklil skoro celú kartu - možno som mal zvoliť iný postup, ale ku karte nemám schému a mne osobne to zapojenie príliš triviálne nepríde, obzvlášť na akékoľvek prekreslenie, najmä ak cestičky začínajú a končia pod neoznačenými súčiastkami, a bez rentgenových očí pod ne bez vyletovania nevidno (ohľadom tej dobovej techniky - neživil som sa jej opravou, ani som ju nezažil, dokonca nemám formálne vyštudované elektro, summa summarum neviem a nemôžem vedieť všetko) - preto som sa prišiel radšej poradiť sem a napokon som to odložil, keď som zistil, že ďalej už asi sám nezmôžem.
Je pravda, že MiniPro TL866 sa používa pre iný účel než test TTL logiky, ale jednoduchý bit-banging ešte zvláda - dovolím si tvrdiť, že určite sofistikovanejší, ako bastliť niečo s NE555.

8255, ktorá je na karte, sa pre LPT nepoužíva - do kanálov je pripojený RTC obvod.
Ten prázdny DIL16 sokel slúži ako konektor pre kšandu s konektorom LPT na panel - ďalší DB25 sa už na kartu fyzicky nezmestil - ten ktorý tam je, je 25pin samec pre RS232.
petula píše:Je vcelku jedno jestli 8-bit adaptér strčíš do pouze 8-bit slotu nebo do 16-bit slotu, kde 16-bit rozšíření nevyužiješ.
Ako som už písal, tú 8bit kartu do 8bit časti 16bitového ISA slotu fyzicky nezasunieš úplne, pretože o 16bit časť ISA udrie spodok karty a nepôjde ďalej. Ponechať kartu nakrivo nech si volne viklá, je dobrým adeptom na vyskratovanie zbernice. Úprimne, už len to mi v historickom stroji ku šťastiu chýba /plus sa v ňom po zbernici vrtať nejakou magickou sondou/.
Ale ako píšem, ponuku na opravu ozajstným odborníkom neodmietnem. :wink:
Přílohy
untitled.png

Uživatelský avatar
judeware
Příspěvky: 1085
Registrován: 04 srp 2009, 02:00
Bydliště: okres Písek

#28 Příspěvek od judeware »

Zajímavá deska... :)

Vážně to po načtení DOSu z diskety (a spuštění debugu) nic nedělá? Mám na mysli zápis na I/O port 378h, resp. 278h.

Nakolíkování LPT1(2) podle mě představuje pevné adresy (viz výše), žádnou abstrakci bych v tom nehledal. Odhaduju, že je tam to nastavení kvůli případné koexistenci se zmíněným Herculesem.

Kdybych tuhle desku dostal na stůl, propískával bych ji ručně, případně "prosvěcoval" (lampou pracovního stolu), dělal jsem to tak mnohokrát. Čtyřvrstvá zřejmě nebude, což? Tak by měla jít analyzovat zrovna takto, třebaže je to mravenčí práce. Hledal bych, kam vedou spoje od A0..A7, IOW non, a D0..D7. Mělo by tím jít odhalit, které IO jsou pro dekodéry adres a který brouk je pro datový registr LPT rozhraní.

Kdo ví, co je tam v nepořádku.

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#29 Příspěvek od nixdorf »

Priznám sa, že teď sa hrám s Edisonovým fonografom a záznamom dát do vosku, ale miesto toho abych tu viedol nejaké jalové debaty, zbastlím čítačku na tú PROM ako Zaky radil a budeme vedieť na čom sme. Prípadne sa toť Peťula ozve a prevedie jednoduchú a rýchlu opravu, za ktorú mu dám pár šupov pretože opravil úplnú trivialitu. Ako by Luboš povedal, banální věc i když si největší (..) na zeměkouli, možná tři minuty, u jiných strojů! :)

V skratke, ako som to tu riešil vo svojich traktátoch, na kartu som zapojil homodomo Covox a počúval či to v repráku práska (tak prebieha i enumerácia IBM BIOSu počas POST - pošle sa jeden bajt a hned sa prečíta stavový register, či tam karta počúva). V repráku ticho po plešine. Tak som postupne "soklil" zaletované LO, počnúc zberničnými, a testoval ich u šikmáka TL866, ktorý má nejaké softwarové bit banging rutiny. Všetky LO takouto kontrolou prešli, až na tú PROM a dekadická delička pri RTC, ktorá mi je fuk.
judeware píše:Odhaduju, že je tam to nastavení kvůli případné koexistenci se zmíněným Herculesem.
Herkules má adresu 3BC nafix, ktorú nepoužíva nikto iný. Ak sa použije akákoľvek iná ISA karta obsahujúca LPT radič, dá sa nakonfigurovať iba na 378 alebo 278. To znamená, ak je v systéme Herkules a ISA LPT radič na 378, nie je treba takúto kartu jumprovať na 278 kvôli "LPT2" - BIOS prešrotí najskôr 3BC - aha, Herkules, LPT1, a potom 378, 278. To znamená max. LPT3, ak je v systéme 1 HGC a 2 ISA LPT, prípadne max. LPT2, ak sa HGC nepoužije a a do systému možno napojiť max. 2 LPT ISA radiče bez konfliktu adries.

Bude to tá PROM, pretože akonáhle ju vytiahnem zo sokla, ktorý som jej prirobil (viem, že sa nemajú nechávať plávajúce vývody), nepriradí to nič nasvičované - ani RAM, ani RTC, ani funkčný RS232 na karte - karta zdechne nadobro.

Uživatelský avatar
rnbw
Příspěvky: 32312
Registrován: 21 bře 2006, 01:00
Bydliště: Bratislava

#30 Příspěvek od rnbw »

Stretol som sa s nejakym ISA radicom, ktory sa dal nastavit na LPT1/2/3. LPT1 bolo 378h, LPT2 bolo 278h a LPT3 3BCh. Akurat ked som ju nastavil ako LPT3, tak som sa nestacil divit - BIOS z nej urobil LPT1.

Odpovědět

Zpět na „Výpočetní technika“