OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 22:05

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 25 ]  Přejít na stránku 1, 2  Další
Autor Zpráva
 Předmět příspěvku: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 09:57 
Offline
Kecálek

Registrován: 28.07.2018, 07:55
Příspěvky: 125
Has thanked: 77 times
Been thanked: 86 times
Ahoj všem!

tak jsem tady taky s takovým malý vánočním dárečkem. Po velkých a vleklých bojích jsem dodělat PMD85 v2 ve Verilogu pro MISTer do stavu kdy to žije, dá se do toho dostat nějaký SW a něco s tím dělat :) Pro představu přikládám i kratičké video na Youtube

phpBB [video]



Momentálně je hotov základ (CPU RAM, ROM), zelený video výstup s blikáním, TV výstup ve stupních šedi, RGB a Color ACE. Zvuk je klasický pípák a MIF85 (ale nezvuká úplně správně - asi kvuli frequenci co má být 8MHz a PLL mi dalo něco málo pod 8. A když jsem to změnil, zvuk se zlepšil, ale začal problikávat obraz - grrr). MIF je třeba povolit v menu před spuštěním hry aby se mohl detekovat. SW se dá zatím nahrát pouze z RMM souborů (už víte proč jsem je poslední týdny loudil? :). A je možné použít joystick.

Na druhé straně není implementována i8251 - resp. pouze vrací prázdné buffery a po přečtení příspěvků s informací že to může být použito k testování zda interval "již uběhl" dodělal jsem tam jednoduchou děličku hodin 10-ti po vložení znaku k odvysílání - jen aby to "něco" dělalo. i8255 je hotov pouze mode 0. i8253 jsem použil z nějakého jiného projekdu z MISTER webu a má tam poznámku o ne zcela 100% implementaci. Stejně tak i SAA1099 je převzaté. Nevím také jak udělat pull up pro signál ALL RAM z 8255 - po spuštění a resetu je pin nastaven jako vstup a do 1 dotažen pull upem. Po nakonfigurování by 8255 měla mít možnost ho dostat do log 0. Ale jak to udělat když PULLUP() není syntetizovatelný pro Alteru? Zkrátka nejde nastavit ALL RAM mód.

Co hodně chybí je floppy. Zvažoval jsem jestli udělat tu originál s 8080, ale pak jsem se začal klonit dát tam ZPU a upravit FW z PMD32SD. Ale zatím jsem z toho NIC neudělal :) Není ani nahrávání z "pásky". A protože jsem nevyloudil rmm s myšoidní hrou tak není ani myš.

Zatím na tom běžely všechny hry co dal Clouseau v rom balíčku pro PMD 2, vyjímka je hlípa, kde je úvodní obrazovka, pak obrazovka s autory a pak se to zasekne. Proč?
A Atomix nemá barevné pruhy přes logo a hudba z MIF je taková trhaná.

Byl to jeden z mých blbých nápadů - udělat PMD. O PMD jsem toho moc nevědel. Byl to sice jeden z prvním počítačů co jsem v životě viděl, ale jen jsme ho tehdy na kroužku (v 2. třídě - to už je dááávno) obešli a sedli k IQ :). Pro vývoj jsem měl dobré základy logiky ze školy, dobrou znalost teorie o OS a stavbě počítace i CPU. Na druhé straně o "svaté trojici" jsem skoro nevěděl že existuje a potřeboval jsem ji "udělat". Všechny IO jsem dohledával co který dělá, na "drátové" OR/AND jsem zíral co že to má být a hledal na Googlu - uff. A ani Verilog jsem neznal. Ve škole jsem dělal něco ve VHDL ale bylo to takové základní blikání. Však to bylo poznat z mého zoufalého volání o pomoc s rozchozením BRAM. A přitom to byla chyba díky překlepu v pojmenovávní "drátů". Od té doby se snažím držet lepší čistotu kódu :) Ale vlastně i odstatní záseky při vývoji byly podobné - moje oblíbené bylo definovat "drát" místo 8-mi "drátů" a divit se proč ta informace neprojde ... No a protože ne vše jsem věděl jak ověřit proč to nejede, naučil jsem se asembler 8080 abych si mohl vyměnit rom za něco co bude potřebovat a testovat jen něco. Ještě že Martin Malý udělal ten online asembler, compiler, debugger i emulátor PMD - Martine, super práce, díky! (Zde je link pro ty co to snad ještě neznají https://www.asm80.com/ :)

No ale dostal jsem to nějakého provozuschopného stavu a budu rád za podněty, připomínky a pomoc. Zdrojáky jsem zatím dal na svůj github, ale pokud nebude od vás shledán hodný hození do koše, zkusím požádat Sorgeliga o hostování přímo na githubu MISTERu. Proto i ten pokus o angličtinu v komentářích a readme. Československý počítač tam ještě nemá!

Zde je link https://github.com/PetrM1/PMD85

A v souvistosti se zveřejněním - jaké máte zkušenosti s přibalením originálním ROM? Ti kdo publikujete emulátory - máte souhlas od vlastníků práv? Nesnažil se vás někdo ohledně toho kontaktovat? Na mém githubu zatím chybí z důvodu této nejistoty MIF soubor s romkou = nezkompiluje se vám to bez ní. Věřím ale že pro vás nebude tento problém tento soubor vytvořit z dostupné rom. A pro ostatní přikládám sem přímo zkompilovaný a zazipovaný rbf soubor. Instalace je jednoduchá, nahrajete rozbalený rbf soubor na mikro sd kartu z MISTERa, vytvoříte adresář PMD85, do něj dáte rmm soubory a hotovo.

Jo a ještě přikládám link na super knížku ohledně 8080 a těch obvodů okolo - hodně mi pomohla

http://www.hartetechnologies.com/manual ... Manual.pdf

Závěrem bych rád poděkoval všem kteří s láskou opečovávají know-how a archiv všeho ohledně PMD - byla to pro mě neocenitelné studnice vědomostí. Obzvláště jsem ocenit knížku "Odstraňování poruch" - časové diagramy znám už z paměti :) Dále pak samozřejmě autorovi překresleného schématu PMD desky, interface, klávesnice a rompacku - to se mi to pak dělalo! Také těm co připravili RMM soubory. A samořejmě neméně těm kteří radou pomáhali mi krotit nejen FPGA a Verilog ale i mou nekázeň při psaní kódu :)

Hezké vánoční svátky všem
Petr

PS: Na to že můj neoblíbený předmět na škole byl sloh tak koukám jak jsem se rozepsal ...


Přílohy:
PMD85_20201219.zip [728.86 KiB]
378 krát
Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 10:58 
Offline
Pan Štábní

Registrován: 12.05.2013, 22:24
Příspěvky: 1508
Bydliště: u Prahy
Has thanked: 44 times
Been thanked: 380 times
Citace:
jaké máte zkušenosti s přibalením originálním ROM? Ti kdo publikujete emulátory - máte souhlas od vlastníků práv? Nesnažil se vás někdo ohledně toho kontaktovat?

Vlastník autorských práv je teoreticky jakýsi Microsoft.
Software před červnem 1990 nebyl chráněn zákonem, autorský zákon nemá zpětnou platnost, čili ani dnes není ROM PMD chráněna zákonem.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 11:03 
Offline
Kecálek

Registrován: 28.07.2018, 07:55
Příspěvky: 125
Has thanked: 77 times
Been thanked: 86 times
To jsem nevěděl, díky


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 11:40 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3766
Has thanked: 269 times
Been thanked: 452 times
Teoreticky Microsoft? To jsem netušil že Tesla opisovala interpret Basicu od něj. Ovšem na Basic nemá patent ani Microsoft, ten vznikl dávno před tím než Microsoft samotný - v roce 1964. PMD je duševně inspirované Hewlett Packard HP-85, pan Kišš v jednom rozhovoru říkal že nějaké části kódu pro PMD co se mu někde líbily prostě opsal a nějaké si napsal sám, s dostupností západního softwaru to bylo v táboře míru a socialismu poněkud na štíru a autorská práva komunistický blok obecně moc neuznával, Sovětský svaz normálně vydával překlady západní technické literatury do ruštiny aniž by se nějak zdržoval debatou s původními autory.

Obecně řečeno v USA patenty vyprší po 20 letech tedy dnes bych už se toho moc nebál. Viz třeba MP3, kterým taky vypršela patentová ochrana a tak Fraunhofferův institut přestal vybírat licenční poplatky a formát se dekomercionalizoval. Dostupné *.RMM ovladače také vznikly před >25 lety (jediný mě známý novodobý ovladač k BT-100 pro PMD 85-3 editací toho starého vyrobil letos rombor).


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 13:09 
Offline
Pan Štábní

Registrován: 12.05.2013, 22:24
Příspěvky: 1508
Bydliště: u Prahy
Has thanked: 44 times
Been thanked: 380 times
Czech Human píše:
Teoreticky Microsoft? To jsem netušil že Tesla opisovala interpret Basicu od něj. Ovšem na Basic nemá patent ani Microsoft, ten vznikl dávno před tím než Microsoft samotný

Basic pro PMD je upravený Nascom Basic od Microsoftu.
Basic sice vznikl dříve, než Microsoft, ale konkrétní kód je microsoftí.
Monitor a úpravy v Basicu (grafické příkazy) jistě dělal Kišš sám (možná s něčí pomocí), ale jeho práce není autorsky chráněna.
Tím inspirováním HP-85 se myslí opravdu inspirace (některé prvky Basicu, hlavně práce s grafikou, a původní způsob komunikace s disketovkou jsou inspirované HP), ale hardware i software počítače je zcela jiný.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 13:17 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3766
Has thanked: 269 times
Been thanked: 452 times
Já to nerozporuju, jsem rád že jsem se dozvěděl která páčka a kam se lije nafta :-). Gates a Allen napsali první interpret Basicu pro Altair 8800, takže se točili kolem řekněme začátku masového použití tohoto jazyka v domácích počítačích.

Ten interpret na PMD 85 je (pro mě) mnohem uživatelsky příjemnější než třeba koncentrovaný děs a hrůza z PP-01. Tam nevím z čeho to opsali ale uživatelský komfort proti PMD je 0, byť obsahuje některé užitečné příkazy, které zase PMD nemá. No a teď už vím proč :-).


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 13:22 
Offline
Pan Štábní

Registrován: 12.05.2013, 22:24
Příspěvky: 1508
Bydliště: u Prahy
Has thanked: 44 times
Been thanked: 380 times
Czech Human píše:
děs a hrůza z PP-01. Tam nevím z čeho to opsali

Já taky ne.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 15:28 
Offline
Radil
Uživatelský avatar

Registrován: 19.07.2013, 14:21
Příspěvky: 258
Bydliště: Košice
Has thanked: 143 times
Been thanked: 380 times
Tak to je naprosta bomba. :dcl: Dakujem, ze si ma predbehol a ze sa ti to podarilo, skvela praca, cez Vianoce si to do Mistera urcite nahram, wow! :dthu:
Hlipa, ale vlastne vacsina sucasnych hier potrebuju pre svoje fungovanie 100% funkcny timer, ktory vyuzivaju na synchronizaciu.

Ohladom implementacie, mohli by sme sa nakontaktovat, pretoze, ked som sa na implementovanie PMDcka do Speccy2010 chystal, podarilo sa mi najst implementacie zakladnych 8251, 8253 a 8255, sice su vo VHDL, ale Altera Quartus to nevadi, takze by som ti mohol poskytnut.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 15:41 
Offline
Kecálek

Registrován: 28.07.2018, 07:55
Příspěvky: 125
Has thanked: 77 times
Been thanked: 86 times
mborik128 píše:
Tak to je naprosta bomba. :dcl: Dakujem, ze si ma predbehol a ze sa ti to podarilo, skvela praca, cez Vianoce si to do Mistera urcite nahram, wow! :dthu:
Hlipa, ale vlastne vacsina sucasnych hier potrebuju pre svoje fungovanie 100% funkcny timer, ktory vyuzivaju na synchronizaciu.

Ohladom implementacie, mohli by sme sa nakontaktovat, pretoze, ked som sa na implementovanie PMDcka do Speccy2010 chystal, podarilo sa mi najst implementacie zakladnych 8251, 8253 a 8255, sice su vo VHDL, ale Altera Quartus to nevadi, takze by som ti mohol poskytnut.



Super, rád to s tím vyzkouším, díky :like:


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 15:44 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 12.05.2013, 19:40
Příspěvky: 1920
Bydliště: Olomouc
Has thanked: 895 times
Been thanked: 693 times
To je moc pekne, myslis, ze bys to dokazal upravit, aby to slo na puvodnim MIST?

_________________
www.krupkaj.cz ~ www.atariportal.cz ~ jaysoft.atari.org
:busybee:


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 17:34 
Offline
Kecálek

Registrován: 28.07.2018, 07:55
Příspěvky: 125
Has thanked: 77 times
Been thanked: 86 times
krupkaj píše:
To je moc pekne, myslis, ze bys to dokazal upravit, aby to slo na puvodnim MIST?


Po pravdě uvažoval jsem nad tím zkusit to rozchodit na ZX Uno, ten mám. MIST bych mohl zkusit, ale bych potřeboval testera. Hlásíš se? :D


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 20:36 
Offline
Radil

Registrován: 21.10.2013, 09:25
Příspěvky: 286
Has thanked: 161 times
Been thanked: 116 times
shark800 píše:
Po pravdě uvažoval jsem nad tím zkusit to rozchodit na ZX Uno, ten mám. MIST bych mohl zkusit, ale bych potřeboval testera. Hlásíš se? :D


Hlasuji pro ZX Uno :heilpmd: :D


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 21.12.2020, 20:44 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 12.05.2013, 19:40
Příspěvky: 1920
Bydliště: Olomouc
Has thanked: 895 times
Been thanked: 693 times
shark800 píše:
krupkaj píše:
To je moc pekne, myslis, ze bys to dokazal upravit, aby to slo na puvodnim MIST?


Po pravdě uvažoval jsem nad tím zkusit to rozchodit na ZX Uno, ten mám. MIST bych mohl zkusit, ale bych potřeboval testera. Hlásíš se? :D


Jasne. ze vahas :-)

_________________
www.krupkaj.cz ~ www.atariportal.cz ~ jaysoft.atari.org
:busybee:


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 22.12.2020, 19:13 
Offline
Radil

Registrován: 24.12.2014, 16:11
Příspěvky: 424
Has thanked: 31 times
Been thanked: 100 times
shark800 píše:
Na druhé straně není implementována i8251 - resp. pouze vrací prázdné buffery a po přečtení příspěvků s informací že to může být použito k testování zda interval "již uběhl" dodělal jsem tam jednoduchou děličku hodin 10-ti po vložení znaku k odvysílání - jen aby to "něco" dělalo. i8255 je hotov pouze mode 0. i8253 jsem použil z nějakého jiného projekdu z MISTER webu a má tam poznámku o ne zcela 100% implementaci. Stejně tak i SAA1099 je převzaté. Nevím také jak udělat pull up pro signál ALL RAM z 8255 - po spuštění a resetu je pin nastaven jako vstup a do 1 dotažen pull upem. Po nakonfigurování by 8255 měla mít možnost ho dostat do log 0. Ale jak to udělat když PULLUP() není syntetizovatelný pro Alteru? Zkrátka nejde nastavit ALL RAM mód.


U interních obvodů se nedělají výstupy třístavové jako u reálných švábů. Dělá se oddělené vedení pro vstup a pro výstup.
Viz například opensource T80. Tam jsou oddělené vstupní a výstupní datové sběrnice.

Mrkni se na
https://opencores.org/
třeba v SoC projektech jsem 825x viděl.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PMD85 jádro pro MISTer FPGA
PříspěvekNapsal: 22.12.2020, 19:50 
Offline
Kecálek

Registrován: 28.07.2018, 07:55
Příspěvky: 125
Has thanked: 77 times
Been thanked: 86 times
To není problém, udělat ne-třístavový výstup. Ale i tak, pokud bude brána nakonfigurována jako vstup, tak budu muset nějak určit jestli má na "out" drátech být 0 nebo 1. A to může být v odlišných částech schámatu (v pmd je 8255 použita 3x) být různé. Pak jedině ještě nějaké extra nastavení aby to mohlo být universální - použitelné vícekráte?


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 25 ]  Přejít na stránku 1, 2  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 1 návštěvník


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz