Un încărcător de snapshot-uri .z80 pentru Cobra CP/M

69 views
Skip to first unread message

t...@ldtlb.com

unread,
Jan 23, 2022, 8:48:55 PM1/23/22
to RomanianHomeComputer
Salutare,

Am scris pentru Cobra CP/M un încărcător de snapshot-uri .z80 [1].  Suportă versiuni 1, 2, și 3 a formatului fără modificări și folosește metoda de pe cobrasov.com [2] să sară în snapshot-ul.  Sunt mai multe detalii în README.

https://github.com/tsowell/runz80-cobra

Și poți descărca un binar aici:
https://github.com/tsowell/runz80-cobra/releases

Sper că ajută pe cineva.  L-am testat puțin cu snapshot-uri din emulatorul FUSE, din TOSEC, și din altă parte de pe web.  Totuși, doar în mod 80K, dar cred că dacă snapshot-uri BASIC+NMI de pe cobrasov.com funcționează, atunci RUNZ80 va funcționa.

1: https://worldofspectrum.org/faq/reference/z80format.htm
2: http://cobrasov.com/CoBra%20Project/basic+nmi-ro.html

--
Tom

Nicolae Muntean

unread,
Jan 26, 2022, 2:45:20 AM1/26/22
to romanianho...@googlegroups.com
Salut , 

Care este sintaxa pt incarcare ? Am scris runz80 file.z80 si spune ca "FILE NOT FOUND"
Am creat o discheta cu COBRA-DOS 2.2   ICI BV si am scris pe ea runz80 si un tetris.z80
MULTUMESC 

--
Ați primit acest mesaj deoarece sunteți abonat(ă) la grupul „RomanianHomeComputer” din Grupuri Google.
Pentru a vă dezabona de la acest grup și pentru a nu mai primi e-mailuri de la acesta, trimiteți un e-mail la adresa romanianhomecomp...@googlegroups.com.
Pentru a vizualiza această discuție pe web, accesați https://groups.google.com/d/msgid/romanianhomecomputer/6476ee26-01a3-408a-a444-adfa97f6fc78n%40googlegroups.com.

t...@ldtlb.com

unread,
Jan 26, 2022, 8:58:34 PM1/26/22
to RomanianHomeComputer
Salut,

Este numele fișierului tetris.z80 sau TETRIS.Z80?
Sintaxa ta e corectă, dar numele fișierului pe discheta trebuie să fie cu majuscule.  Dacă numele fișierului e tetris.z80, nu va funcționa.  Dacă numele fișierului e TETRIS.Z80, poți scrie RUNZ80 TETRIS.Z80 sau runz80 tetris.z80.
(Sistemul de fișiere e case-sensitive în CP/M, dar CPP-ul îți convertește comenzile în majuscule. Deci, e imposibilă specificarea fișierelor ale căror nume includ litere mici.)

Dacă asta nu te ajută, poți împărți imaginea de dischetă ta?  Poate pot afla ce se întâmplă.

--
Tom

Nicolae Muntean

unread,
Jan 26, 2022, 9:59:18 PM1/26/22
to romanianho...@googlegroups.com
Multumesc de raspuns

z80 .img

Thomas Sowell

unread,
Jan 26, 2022, 11:03:05 PM1/26/22
to romanianho...@googlegroups.com
Mulțumesc de imaginea. Da, literele mici sunt problema. Snapshot-uri pe discheta ta nu funcționează pentru mine, dar după ce le-am redenumit (1942.z80 -> 1942.Z80 și Tetris.z80 -> TETRIS.Z80) au funcționează. Sper să meargă pentru tine.

Am folosit cobra-cpm-diskimg-copy pentru a le extrage, a le redenumi, și a le scrie din nou. Rezultatul e atașat.

--
Tom
> https://groups.google.com/d/msgid/romanianhomecomputer/291cfc3a-5c
> 8b-469b-82a8-546f2317119bn%40googlegroups.com.
>
> --
> Ați primit acest mesaj deoarece sunteți abonat(ă) la un subiect din
> grupul „RomanianHomeComputer” din Grupuri Google.
> Pentru a vă dezabona de la acest subiect, accesați
> https://groups.google.com/d/topic/romanianhomecomputer/sjhitBj04M4/un
> subscribe.
> Pentru a vă dezabona de la acest grup și de la toate subiectele din
> acesta, trimiteți un e-mail la adresa
> romanianhomecomp...@googlegroups.com.
> Pentru a vizualiza această discuție pe web, accesați
> https://groups.google.com/d/msgid/romanianhomecomputer/CAFe%2Bq5qdhC5
> %3DWbAE5ZVC1OQ1ZC_ph1cZgS5P7aQ2kTtG2%3DsaRg%40mail.gmail.com.


z80_mare.img

Nicolae Muntean

unread,
Jan 27, 2022, 4:49:29 AM1/27/22
to romanianho...@googlegroups.com
Ok și eu tot așa am creat-o. Mulțumesc mult

Pentru a vizualiza această discuție pe web, accesați https://groups.google.com/d/msgid/romanianhomecomputer/YfIZeMwadyj2R1/1%40ldtlb.

Nicolae Muntean

unread,
Jan 29, 2022, 5:10:42 AM1/29/22
to romanianho...@googlegroups.com
Salut !

Am testat azi si functioneaza ok 

MULTUMESC

George Chirtoaca

unread,
Jan 29, 2022, 5:37:47 AM1/29/22
to romanianho...@googlegroups.com
M-am gandit și eu la un incarcator similar pentru HC, din BASIC sau CP/M. Sau un convertor snapshot la COM. Poate gasesc timp sa implementez si ma inspir din codul existent pentru Cobra.

De asemenea, voi investiga utilizarea de unități floppy USB cu HCDisk, pentru format CP/M, care e suportat de floppy USB, ca geometrie a discului, 720KB, 80 piste x 9 sectoare x 2 fete, double density. Asta ar face mai usor transferul de snapshot-uri.

Mircea Teletin

unread,
Jan 29, 2022, 9:28:41 AM1/29/22
to romanianho...@googlegroups.com
Din pacate, din cate stiu eu, Floppy pe USB nu functioneaza similar cu Floppy cu controller pe placa de baza. Am cumparat (degeaba) si eu o unitate de genul asta, nu poti programa controllerul de pe ea sa citeasca in ce format vrei tu discheta. Din acest motiv mi-am facut un "retro" PC (Intel Q8400) cu o placa de baza care inca are controller de flopp si din Linux cu cpmtools si cu fdparm poti face ce vrei tu. Am reusit sa formatez dischete CP/M din linux care apoi sa mearga perfect pe HC2000.
Deci din pacate FDD pe USB... nu merge. Recomand cu tarie un PC mai vechi cu FDD controller pe placa de baza. Te scuteste de toate bataile de cap inutile.

George Chirtoaca

unread,
Jan 29, 2022, 9:47:45 AM1/29/22
to romanianho...@googlegroups.com
Mircea, stiu ce zici. Dar floppy pe USB stie 2 formate: 1.44 MB HD si 740 KB DD. Limitarea e din standardul USB mass storage: https://www.usb.org/sites/default/files/usbmass-ufi10.pdf .

Formatul 720 KB e acelasi ca la CP/M, pentru multe computere, inclusiv Cobra si HC. Deci ar trebui sa mearga doar pentru acest format. Si atunci ar fi usor de transferat fisiere cu un PC modern fara controller floppy. Trebuie doar sa vad cum se citește la nivel de sector acest dizpozitiv floppy pe USB, pentru ca nu e vazut ca storage device.

Am reusit azi sa formatez 720KB in unitatea USB cu Windows si sa o citesc ca format CP/M in unitate floppy cu controller cu program HCDisk. Ca file system nu sunt compatibile, FAT vs CP/M, dar ca geometrie e identic formatul.



Thomas Sowell

unread,
Jan 29, 2022, 7:29:49 PM1/29/22
to romanianho...@googlegroups.com
O abordare simplă pentru realizarea unui convertor e modificarea de libspectrum în proiectul Fuse.

http://fuse-emulator.sourceforge.net/libspectrum.php

Înainte de RUNZ80, am experimentat cu libspectrum, și patch-ul atașat adăugă suport pentru Cobra COM. Când Fuse și fuse-utils sunt compilate cu libspectrum-ul patched, poți crea snapshot-uri COM direct din Fuse, sau poți folosi snapconv din fuse-utils pentru a converti orice format la COM.

Dezavantajele sunt nevoia de versiunile patched și dimensiunile fișierelor din cauza lipsei de compresie. De asemenea, am sperat că încărcătorul ar fi mai repede din cauza compresiei, dar nu este așa. Totuși, RUNZ80 este neoptimizat.

Mult noroc dacă te decizi să o faci. Desigur, dacă ar ajută, ești binevenit să utilizezi orice ai nevoie din RUNZ80 sau patch.

--
Tom
0001-Add-COBRA-CP-M-loader-snapshot-support.patch
Reply all
Reply to author
Forward
0 new messages