Primo-GA, a Primo újraépítése egy FPGA-ban

17 views
Skip to first unread message

joco

unread,
Feb 12, 2011, 2:06:25 AM2/12/11
to Microkey Primo, jo...@szabolcs.net
Kedves Listatagok,

Az alábbi oldalon szeretném bemutatni egy több éves projekt
eredményét, amely
nem más, mint a primo újraépítése egy FPGA áramkörben. A weboldalon
általános információt találhattok a projektről, a teljesség igénye
nélkül, csak
egy gyors bemutatás szintjén.

http://joco.homeserver.hu/primoga/

A prototípus legyártásához majd segítségre lenne szükségem, tudom,
hogy vannak a
listán olyanok, akik tudnak nyomtatott áramköröket gyártani. Itt is
erre lenne szükség,
esetleg kis segítséggel a tervezésben, azt is tudva hogy ezek az
áramkörök
elég sok lábbal rendelkeznek, tehát mindenképp smd technológiára és
kis méretekre
kell számítani.

Visszajelzéseket várok a listára, illetve magánban is írhattok
jo...@szabolcs.net címre.
Kíváncsi vagyok a fogadtatásra, az érdeklődésre egy ilyen megvalósítás
iránt.

Köszönöm
László József (joco)

zitev

unread,
Feb 12, 2011, 4:10:10 AM2/12/11
to microke...@googlegroups.com
Mekkora kir�lys�g, gratul�lok a projekthez!
Kell� er�t, id�t, energi�t k�v�nok a fejleszt�shez!

�dv, zitev

2011-02-12 08:06 keltez�ssel, joco �rta:
> Kedves Listatagok,
>
> Az al�bbi oldalon szeretn�m bemutatni egy t�bb �ves projekt
> eredm�ny�t, amely
> nem m�s, mint a primo �jra�p�t�se egy FPGA �ramk�rben. A weboldalon
> �ltal�nos inform�ci�t tal�lhattok a projektr�l, a teljess�g ig�nye
> n�lk�l, csak
> egy gyors bemutat�s szintj�n.
>
> http://joco.homeserver.hu/primoga/
>
> A protot�pus legy�rt�s�hoz majd seg�ts�gre lenne sz�ks�gem, tudom,
> hogy vannak a
> list�n olyanok, akik tudnak nyomtatott �ramk�r�ket gy�rtani. Itt is
> erre lenne sz�ks�g,
> esetleg kis seg�ts�ggel a tervez�sben, azt is tudva hogy ezek az
> �ramk�r�k
> el�g sok l�bbal rendelkeznek, teh�t mindenk�pp smd technol�gi�ra �s
> kis m�retekre
> kell sz�m�tani.
>
> Visszajelz�seket v�rok a list�ra, illetve mag�nban is �rhattok
> jo...@szabolcs.net c�mre.
> K�v�ncsi vagyok a fogadtat�sra, az �rdekl�d�sre egy ilyen megval�s�t�s
> ir�nt.
>
> K�sz�n�m
> L�szl� J�zsef (joco)
>

Kardos Balázs

unread,
Feb 12, 2011, 6:00:26 AM2/12/11
to microke...@googlegroups.com
Szia!

Szeretnék gratulálni az elért igen kecsegetető eredményekhez a Speccyalista
Baráti Kör, azaz a Sinclair.hu nevében.

Miután megakadt a szemem a ZX Spectrumon is, mint lehetséges spectrumga
projekt, így igyekszem megszervezni a támogatást a Sinclair.hu részéről. :)
Már sokszor átrágtuk a témát, megannyi ötlet is volt, de a megvalósítást
váratott magára ezidáig.

Az eddig olvasottak után egyetlen kérdésem merült fel, nevezetesen, hogy egy
spectrumga esetében megvalósítható-e, hogy a meglévő hardver eszközök is
használhatóak legyenek ezzel e kis FPGA-s kütyüvel? Gondolom primo esetében
ez nem egy marginális kérdés, de spectrum esetében mindenképp része lenne a
szkópnak. :)

üdv,
Bali

Kedves Listatagok,

http://joco.homeserver.hu/primoga/

Köszönöm
László József (joco)

--
Hozzászólás: microke...@googlegroups.com
Leiratkozás: microkey-prim...@googlegroups.com
Csoportoldal: http://groups.google.com/group/microkey-primo?hl=hu?hl=hu
Weboldal: http://primo.homeserver.hu

Majzik Istvan

unread,
Feb 12, 2011, 5:35:38 PM2/12/11
to rbe...@gmail.com, microke...@googlegroups.com

Kedves Joco!

Gratulálok én is, hogy a Primo-GA elindult, és futtatja a Primo programokat!
Érdeklődéssel várom a részleteket!

Sajnos NYÁK gyártással kapcsolatban sok tapasztalatom nincs, én is "kézi festéses" módszerrel nyomultam még egyetemista koromban (ld. fejhallgató erősítő panel és hasonló játékok).

Egy-két kérdést persze nem tudok visszatartani:

- A FAT file rendszer kezeléshez elkészült egy Primo "driver"?
Az egyik képernyőn FAT driver mellett MMC2IEC felirat is olvasható. Ez azt jelenti, hogy a CDOS kompatibilis hozzáférés is megoldható?

- Nem tervezed a Primo IEC busz (C64 floppy meghajtó) és a soros Joystick port belerakását a hardverbe? Ez 8-10 szabad jellel megoldható lenne, és támogatná szinte minden értelmes Primo periféria használatát, a floppyt is beleértve :)

Sok sikert a további fejlesztéshez, és várjuk az információkat!

Üdv.
Istvan


joco <rbe...@gmail.com> írta:

Bendeguz Regos

unread,
Feb 13, 2011, 1:05:01 AM2/13/11
to microke...@googlegroups.com
Szia,


- A FAT file rendszer kezeléshez elkészült egy Primo "driver"?
Az egyik képernyőn FAT driver mellett MMC2IEC felirat is olvasható. Ez azt
jelenti, hogy a CDOS kompatibilis hozzáférés is megoldható?

A rendszer indulása után az AVR mikrokontroller kezeli az SD kártyát, a
primo pedig egy saját protokollon keresztül éri el az AVR-t és parancsokat
ad neki. Ezt a saját protokollt majd részletesen leírom egyszer. Az MMC2IEC
azért szerepel ott, mert a FAT kezelő részt abból a projektből vettem át és
nem szoktam más tollaival ékeskedni, legalábbis mindenképp kiírom az eredeti
szerzőket. Egyébként szerintem szinte bármi megvalósítható, bár sok esetben
fel kell tenni a kérdést, hogy érdemes-e valamit megcsinálni. A CDOS-t nem
ismerem, de gyanítom, hogy hasonló dolgokat tud, mint az én megoldásom,
nevezetesen fájlok betöltése, direktorizás stb, tipikusan amit egy DOS-nak
tudnia kell. Az én megoldásom viszont csak kissé módosítja a primo.rom-ot,
és mindent a cmd, load és save utasításokon keresztül old meg, de a
lemezkezelést már az AVR végzi.
Talán leírok pár példát, miképp működik a fájlkezelés most az AVR-en keresztül:

cmd "cd games" - belép a games könyvtárba
cmd "mkdir test" - könyvtár létrehozása
cmd "delete f1.prg" - fájl törlése
cmd "dump t2.prg" - fájl szöveges hexa dump megjelenítése

... és így tovább. A cmd parancs paramétere az AVR-ek küldött üzenet. Az AVR
értelmezi a szöveget, elvégzi amit kell és válaszol a primo-nak.

load "jetpac.prg" - betöltés a load utasítással
save "test.prg" - mentés


Egyébként a primo.rom-ot is az SD kártyáról tölti be a rendszer, tehát annak
nincs akadálya, hogy bárki saját romot készítsen, és abban azt lehet
megvalósítani, amit akarsz :-)


- Nem tervezed a Primo IEC busz (C64 floppy meghajtó) és a soros Joystick
port belerakását a hardverbe? Ez 8-10 szabad jellel megoldható lenne, és
támogatná szinte minden értelmes Primo periféria használatát, a floppyt is
beleértve :)

A joy megvalósítását tervezem, csak még kell valaki aki pontosan elmondja
nekem, hogy miképp is működik. Találtam mindenféle kapcsolásokat a primo
weboldalon, tudom, hogy egy sima léptetőregiszter kell csak, és 8 bitet kell
beolvasni. Azt viszont sem a hardver, sem semmilyen doksi nem említi, hogy
ezt a léptetőregisztert mikor és hogyan lehet alaphelyzetbe hozni, azaz
miképp reset-eled. De majd kérek segítséget ebben a témában a listán. A joy
mindenképp meg lesz valósítva.
Az IEC busz megint csak olyan kérdés, ami megoldható, csak pár kivezetés
kellene hozzá, de érdemes? Ott lesz az SD kártya háttértárnak. Az én
megoldásom talán annyiban hiányos most még, hogy nem kezeli az
open/input#/close utasításokat, de
biztos vagyok benne, hogy ezt majd valaki megoldja, ha minden infot megadok
a hardverrről.

Az a jó ebben az egészben, hogy mind az FPGA, mind az AVR programja később
változtatható. Tehát firmware szinten tudunk később javításokat, plusz
feature-öket megoldani, és ehhez a hardvert nem kell majd módosítani.

A külső egységek illesztése egy dolog miatt lehet problémás, a szintillesztés
miatt. Egy passziv eszköz, mint a joy nem okoz gondot, de
egy aktív eszköz, aminek tápfesz és mindenféle Z80 jel kell, már más lapra
tartozik. Az FPGA ugyanis 3.3V-al megy, a legtöbb korabeli régi eszköz
viszont 5V-al. Tehát minden egyes jelet illeszteni kell.
(Igazából az FGPA-nak három különálló tápfesz kell, de a külvilág felé a 3.3V-al
tud csatlakozni.)

Remélem, kimerítően válaszoltam a kérdéseidre, és ha vannak továbbiak, várom
őket.:-)

joco


Majzik Istvan

unread,
Feb 14, 2011, 4:30:48 PM2/14/11
to microke...@googlegroups.com, rbe...@gmail.com

Szia!
Köszönöm a részletes választ!
Nagyon jó dolog, hogy ilyen rugalmas lesz a rendszer, tehát sem a
ROM, sem az AVR programja nem kell, hogy kötött legyen.

A Primo CDOS egyébként kicsit hasonló a leírt parancskészlethez,
néhány példa:
cmd load "jetpac"
cmd save "basprog"
cmd kill "basprog"
cmd new "lemeznev,12"
cmd $
(Az 1541 kompatibilis floppy meghajtó parancs csatornája is írható
CDOS alól.)

A Primo joystick illesztőjéről annyit, hogy ebben kell legyen egy olyan
monostabil (visszabillenő) áramkör, ami az első léptető impulzusra
bebillen, engedélyezi a számlálót, majd egy idő után visszabillen,
így nullázza a számlálót, így az a következő beolvasásra kész lesz.
Így pl. előfordulhat az, ha az időzítés kicsi, hogy BASIC-ből nem is
lehet kiolvasni a joystick minden irányát, mert túl lassú a léptetések
és olvasások sorozata, és közben a monostabil nullázza a számlálót :)

Üdv.
Istvan


Bendeguz Regos <rbe...@gmail.com> írta:
>Szia,- A FAT file rendszer kezeléshez elkészült egy Primo >
&quot;driver&quot;?Az egyik képernyőn FAT driver mellett MMC2IEC felirat is olvasható. >


Ez azt jelenti, hogy a CDOS kompatibilis hozzáférés is megoldható?A >
rendszer indulása után az AVR mikrokontroller kezeli az SD kártyát, a primo >
pedig egy saját protokollon keresztül éri el az AVR-t és parancsokat ad >
neki. Ezt a saját protokollt majd részletesen leírom egyszer. Az MMC2IEC >
azért szerepel ott, mert a FAT kezelő részt abból a projektből vettem át és >
nem szoktam más tollaival ékeskedni, legalábbis mindenképp kiírom az eredeti >
szerzőket. Egyébként szerintem szinte bármi megvalósítható, bár sok esetben >
fel kell tenni a kérdést, hogy érdemes-e valamit megcsinálni. A CDOS-t nem >
ismerem, de gyanítom, hogy hasonló dolgokat tud, mint az én megoldásom, >
nevezetesen fájlok betöltése, direktorizás stb, tipikusan amit egy DOS-nak >
tudnia kell. Az én megoldásom viszont csak kissé módosítja a primo.rom-ot, >
és mindent a cmd, load és save utasításokon keresztül old meg, de a >

lemezkezelést már az AVR végzi.Talán leírok pár példát, miképp működik a fájlkezelés most az AVR-en keresztül:cmd &quot;cd games&quot; - belép a games könyvtárbacmd &quot;mkdir test&quot; - könyvtár létrehozása>
cmd &quot;delete f1.prg&quot; - fájl törlésecmd &quot;dump t2.prg&quot; - fájl szöveges hexa dump megjelenítése... és így tovább. A cmd parancs paramétere az AVR-ek küldött üzenet. Az AVRértelmezi a szöveget, elvégzi amit kell és válaszol a primo-nak.>
load &quot;jetpac.prg&quot; - betöltés a load utasítássalsave &quot;test.prg&quot; - mentésEgyébként a primo.rom-ot is az SD >


kártyáról tölti be a rendszer, tehát annak nincs akadálya, hogy bárki saját romot >
készítsen, és abban azt lehet megvalósítani, amit akarsz :-)- >
Nem tervezed a Primo IEC busz (C64 floppy meghajtó) és a soros Joystick port >
belerakását a hardverbe? Ez 8-10 szabad jellel megoldható lenne, és >
támogatná szinte minden értelmes Primo periféria használatát, a floppyt is >

beleértve :)A joy megvalósítását tervezem, csak még kell valaki aki >


pontosan elmondja nekem, hogy miképp is működik. Találtam mindenféle >
kapcsolásokat a primo weboldalon, tudom, hogy egy sima léptetőregiszter kell >
csak, és 8 bitet kell beolvasni. Azt viszont sem a hardver, sem semmilyen >
doksi nem említi, hogy ezt a léptetőregisztert mikor és hogyan lehet >
alaphelyzetbe hozni, azaz miképp reset-eled. De majd kérek segítséget ebben >

a témában a listán. A joy mindenképp meg lesz valósítva.Az IEC busz >


megint csak olyan kérdés, ami megoldható, csak pár kivezetés kellene hozzá, >
de érdemes? Ott lesz az SD kártya háttértárnak. Az én megoldásom talán >
annyiban hiányos most még, hogy nem kezeli az open/input#/close >

utasításokat, debiztos vagyok benne, hogy ezt majd valaki megoldja, ha >
minden infot megadok a hardverrről.Az a jó ebben az egészben, hogy >


mind az FPGA, mind az AVR programja később változtatható. Tehát firmware >
szinten tudunk később javításokat, plusz feature-öket megoldani, és ehhez a >

hardvert nem kell majd módosítani.A külső egységek illesztése egy dolog >


miatt lehet problémás, a szintillesztés miatt. Egy passziv eszköz, mint a >

joy nem okoz gondot, deegy aktív eszköz, aminek tápfesz és mindenféle Z80 >


jel kell, már más lapra tartozik. Az FPGA ugyanis 3.3V-al megy, a legtöbb >
korabeli régi eszköz viszont 5V-al. Tehát minden egyes jelet illeszteni >

kell.(Igazából az FGPA-nak három különálló tápfesz kell, de a külvilág felé a 3.3V-altud csatlakozni.)Remélem, kimerítően válaszoltam a kérdéseidre, és ha vannak >
továbbiak, várom őket.:-)joco>
>
>
>

Reply all
Reply to author
Forward
0 new messages