This document is also available in English. Dieses Dokument ist auch auf Deutsch erhältlich.
C2N232 on pieni RS-232-sovitin, joka voidaan liittää 8-bittisen Commodore-tietokoneen kasettiasemaliitäntään:
Nimessä C2N232
on kaksi osaa: C2N
ja 232
. C2N
on Commodore-kasettiaseman alkuperäinen mallinimi. Luku 232 viittaa
RS-232:een,
joka on tahdistamattoman sarjamuotoisen tiedonsiirron hallitseva
standardi.
Laite on mahdollista kytkeä mihin tahansa Commodore-tietokoneeseen, jossa on kasettiasemaliitäntä. 264-malliston koneisiin liitettäessä on käytettävä sovitinta, sillä liitin on erilainen.
Laitetta voidaan käyttää myös muiden 8-bittisten tietokoneiden kanssa. Varusohjelmisto tuntee myös Tangerine Oric-1:n tallennusmuodon.
LOAD
, SAVE
, OPEN
).tap
) latausohjelmaRS-232-liitin on naaraspuolinen 9-nastainen D-liitin, eli se sopii suoraan IBM PC/AT -tyylisen sarjaliitäntään.
Tavallisesti C2N232:n RS-232-päähän liitetään
jatkojohto. Vähintään kolme johtoa on kytkettävä: nastat 5 (maa), 2
(lähetetty tieto) ja 3 (vastaanotettu tieto). 25-napaisessa liittimessä
vastaavat nastat ovat numeroiltaan 7, 3 ja 2. Koska C2N232:n liitin on
kytketty DCE:n tapaan, nollamodeemijohtoa
ei pidä
käyttää.
Seuraavassa oletetaan, että sinulla on Commodore 64.
c2nload
LOAD
ja paina RETURN.PRESS PLAY ON TAPE
.isossa koneessaseuraavaan tapaan. Voit muuttaa tiedostonimeä, sarjaliitännän laitekuvaimen nimeä tai tietokoneen mallia tarpeen mukaan.
c2nload -c serial.device -m 64 file.prg
c2nload -c com1 -m 64 file.prg
c2nload -c /dev/ttyS0 -m 64 file.prg
FOUND FILE.PRG
.FOUND
-viesti välähtää näytössä, jotta tietokoneelta
ei jää ohjelman loppu lataamatta, sillä C2N232 ei tottele
moottorinohjausviestejä. Älä paina välilyöntiä, sillä kone
saattaa jättää lopun väliin ja jäädä odottamaan seuraavan tiedoston
alkua.Jos ohjelma on käynnistettävä SYS
-komennolla, voit antaa SYS
-osoitteen -j
-vivulla.
cbmlink
cbmlink
-palvelin edellisen kohdan ohjeiden
mukaisesti, esimerkiksi c2nload -c /dev/ttyS0 -m 64 -j 52224
cbmprg/c2n232/c64/plain.prg
.READY.
cbmlink
voidaan ajaa isossa koneessa.
cbmlink -c c2n232 serial.device
cbmlink -c c2n232 com1
cbmlink -c c2n232 /dev/ttyS0
cbmlink
-palvelimen levykkeelle
lataamisen nopeuttamiseksi ja automatisoimiseksi Commodore 128:n
käynnistyslohkon avulla. Huomaa, että nykyisen
cbmlink
-ohjelman valitsimet -fr
ja -fw
eivät muunna tiedostonimien
merkistöä eivätkä poista hakemistonimiä eivätkä päätteitä
tiedostonimistä. Kannattaa nimetä tiedosto uudelleen ensin,
esimerkiksi C64 SYS52224
. Commodore 64:n
palvelinohjelma voidaan kopioida levykkeelle seuraavasti.
cbmlink -c c2n232 serial.device -fw cbmprg/c64/plain.prg
cbmlink -c c2n232 com1 -fw cbmprg\c64\plain.prg
cbmlink -c c2n232 /dev/ttyS0 -fw cbmprg/c64/plain.prg
Kyllä, mutta kasettiaseman matkintaa tarvitaan vain
c2nload
-pikalatausohjelman lataamiseen, joka kestää
muutaman sekunnin. Varsinaisten ohjelmien siirtoa jarruttaa RS-232-liitännän
nopeus, 38 400 bittiä eli noin 3 840 tavua sekunnissa.
.tap
-tiedostoja)
ladata?Ohjelma faucet
kykenee toistamaan joitakin tiedostoja.
Valitettavasti nykyistä C2N232-koodia voi ohjata vain RS-232-liitännän välityksellä. Myöhemmin julkaistava koodi mahdollistaa C2N232:n ohjaamisen myös Commodoren puolelta.
Oletko varma, että FIFO-puskurit on asetettu käyttöön laitehallinnassa?
Laitehallintaan pääsee Ohjauspaneelista. Kaksoisnapsauta kuvaketta
Järjestelmä
avataksesi ikkunan Ominaisuudet:
Järjestelmä
. Valitse välilehti Laitehallinta
.
Windows 2000:ssa kyseinen välilehti on korvattu välilehden
Laitteisto
painikkeella Laitehallinta
.
Valitse esille tulevasta laiteajuriluettelosta Portit (COM ja
LPT)
sekä se sarjaliitäntä, johon C2N232 on kytketty.
Ikkuna Ominaisuudet: Tietoliikenneportti (COMx)
avautuu. Valitse välilehdeltä Porttiasetukset
vuonohjaus
Laitteisto
ja paina Lisäasetukset
avataksesi ikkunan
Porttien lisäasetukset
. Varmista, että kohta Käytä
FIFO-puskureita
on valittu.
Kaikkien muiden asetusten pitäisi olla C2N232-ohjelmiston
hallinnassa. Elleivät ohjelmat edelleenkään toimi, käytä ikkunan
Porttien lisäasetukset
painiketta Oletukset
tai ikkunan
Ominaisuudet: Tietoliikenneportti
välilehden
Porttiasetukset
painiketta Palauta oletukset
.
USB-RS-232-sovitinten ajurit ovat pääsääntöisesti puutteellisia. Mac OS X:ssä toimivat Keyspanin valmistamat sovittimet. Prolific PL-2303:llä toteutetut sovittimet toimivat ainakin Windowsissa ja GNU/Linuxissa pienin ohjelmistomuutoksin. Kalliista hinnastaan huolimatta FTDI:n sovittimet ja mikropiirit eivät ole suositeltavia, sillä Linux-ajuri ei lähettäessään toteuta minkäänlaista vuonohjausta. Windows-ajurikin näyttää yleensä olevan piittaamatta vuonohjauksesta.
Prolificin elokuussa 2005 julkaisema Windows-ajuri voi kaataa koneen. Linux-ajurissa ei toimi XON/XOFF-vuonohjaus, mutta onneksi edes CTS/RTS toimii oikein.
C2N232-laitteen sisältämä koodi päivitetään RS-232-liitännän välityksellä käyttämällä Unixia tai Windowsia.
On kytkettävä neljä aktiivista signaalia (RxD, TxD, CTS ja RTS) sekä kytkettävä mikro-ohjaimen AT90S2313 RESET-linja (nasta 1) maahan (nasta 10, RS-232-liitännän nasta 5 tai kortinreunaliittimen nasta 1). Lisäksi piirilevyyn on kytkettävä käyttöjännite.
Piirilevyn tuotantoversiossa on kaksi hyppylangan paikkaa. Toinen, joka on osittain mikro-ohjaimen alla, voi olla aina kytkettynä. Toinen, AT90S2313:n RESET-kytkin, sijaitsee kasettiliittimen vieressä. Se on suljettava koodin päivittämisen ajaksi.
Aluksi voit kopioida nykyisen koodin talteen kirjoittamalla seuraavanlaisen komennon.
cisp
-ohjelmaa ei ole vielä sovitettu
Amigalle.cisp -c c2n232 com1 -s firm-old.s19
cisp -c c2n232 /dev/ttyS0 -s firm-old.s19
Avaa AT90S2313:n RESET-kytkin tai sammuta C2N232 hetkeksi. Sen jälkeen voit päivittää koodin seuraavanlaisella komennolla.
cisp
-ohjelmaa ei ole vielä sovitettu
Amigalle.cisp -c c2n232 com1 -e -l firmware.s19
cisp -c c2n232 /dev/ttyS0 -e -l firmware.s19
Jos haluat vielä tarkistaa ohjelmoinnin onnistumisen, avaa taas RESET-kytkin tai sammuta virta hetkeksi, ja anna seuraavantapainen komento.
cisp
-ohjelmaa ei ole vielä sovitettu
Amigalle.cisp -c c2n232 com1 -v firmware.s19
cisp -c c2n232 /dev/ttyS0 -v firmware.s19
cisp: failed to enable the programming mode
Unohditko yhdistää C2N232:n RESET-linjan maahan ja kytkeä käyttöjännitteen? Onko RS-232-liitäntä kytketty oikein? Osaako Unix-koneesi CTS/RTS-kättelyn?
detect: device is locked
Koska RESET-linja ei ole cisp
-ohjelman hallinnassa,
tätä virhettä on vaikea poistaa. Virhe ilmenee ainakin sen jälkeen,
kun koodi on ladattu komennolla cisp -l
. Lataamisen
onnistumisen tarkistamiseksi C2N232:n virta on katkaistava tai
RESET-hyppylanka on irrotettava hetkeksi.
Ellet halua itse rakentaa C2N232-laitetta piirilevykuvien perusteella, Nicolas Welte voi auttaa. Marko Mäkelän tuottamat 130 laitetta on myyty nyt loppuun. Edellisen valmistuserän hinta—toimituskuluineen mihin tahansa maailmassa—oli 20 €.
Lisää kuvia on kuvagalleriassamme. Marko myy laitteet ilman koteloa, mutta voit tehdä kuten Nicolas Welte. Hän sovitti DB9–DB25-kotelon C2N232:lle ja liimasi siihen kasettiasemaliittimen alapuolen kiinni:
Tiedostonimi | Tarkoitus | Järjestelmät |
---|---|---|
c2nload | Pieni itsestään käynnistyvä C2N232-pikalataaja | Commodore AmigaOS, Microsoft Windows ja Unixin kaltaiset järjestelmät; kaikki Commodore-koneet, jotka osaavat ladata kasetilta |
c2n | Kasettiaseman matkija C2N232:lle | Commodore AmigaOS, Microsoft Windows ja Unixin kaltaiset järjestelmät |
cbmlink | Tiedostonsiirto ja Commodore-koneiden etähallinta | Commodore AmigaOS, Microsoft Windows ja Unixin kaltaiset järjestelmät |
Kaikki Commodore-ohjelmat on kirjoitettu 6502-konekielellä; muu on C-kieltä. Amigalle ja Windowsille on valmiiksi käännetyt ohjelmat. Unixin kaltaisten järjestelmien käyttäjät saavat käyttää C-kääntäjää.
C2N232-firmware-sivulla on lähdekoodi ja hieman dokumentaatiota. Koodin muuttamiseksi tarvitset GNU Binutilsin.
Koodin siirtämiseen tarkoitettu cisp
-ohjelma, joka on
saatavissa firmware-sivulta, on testattu FreeBSD:ssä, Linuxissa ja Microsoft
Windowsissa. Voinet käyttää muutakin siirto-ohjelmaa.
Ajatus C2N232:n kehittämisestä syntyi 30. kesäkuuta 2001, kun Marko Mäkelä vieraili tutun Commodore-hakkerin Christopher Phillipsin luona Newcastle upon Tyne’issä. Christopherilla ei ollut mitään tiedonsiirtovälinettä Commodore 64:n ja hänen pääkoneensa, Apple Macintoshin välillä. Koska ainoa järkevä Mac-koneen liitäntä on RS-232, olemassa olevat rinnakkaisporttia edellyttävät ratkaisut eivät olleet käytettävissä.
Ensimmäinen prototyyppi valmistui heinä- tai elokuussa, ja ohjelmiston kehittäminen alkoi samoihin aikoihin.
Aluksi kirjoitin jonkin verran koodia saadakseni luetuksi
kirjoitussignaalista pulssinleveyksiä voidakseni selvittää
tallennusmuodon yksityiskohdat. Tim Arnot’n
teoksen Commodore 64 Whole Memory Guide
tiedot
osoittautuivat epätarkoiksi. Kirjoitin ohjelman c2n
,
joka koodaa ja purkaa Commodore-kasettien pulssijonoja ja lisäsin
cbmconvert
-ohjelmaan Commodore-kasettien korkean tason
tiedostomuodot.
Seuraavaksi toteutin pulssijonojen toistamisen. Viimeiset virheet korjattiin 11. syyskuuta 2001, kun Juha Kouri ja Turo Heikkinen vierailivat luonani Espoossa voidakseen tutkia kytkentää muistioskilloskoopilla.
Nopean tiedonsiirtomenetelmän kehittäminen kesti muiden kiireiden
vuoksi useita kuukausia. Suunnittelin yhteyskäytännön kaikilla
8-bittisillä Commodore-tietokoneilla toimivaksi. Kun väylä on vapaa,
molemmat signaalit, READ ja WRITE, ovat loogisessa 1
-tilassa. Sekä
lähetyksen että vastaanottamisen aloittaa Commodore asettamalla WRITE-signaalin loogiseen 0
-tilaan. Siten
yhteyskäytäntö voi toimia oikein, vaikka READ-signaalin putoamisesta kertovan rekisterin
sisältö tuhoutuisi väylän ollessa vapaana. Lähetyksen ajoitus on
erittäin tarkka: suorittimen kellotaajuuden on pysyttävä sen aikana
vakiona.
Muistioskilloskoopille tuli taas käyttöä loka- tai marraskuussa, kun nopea tiedonsiirtomenetelmä piti saada toimimaan 264-sarjan koneissa. Muista Commodoreista poiketen niissä READ-signaali ei ole reunaherkkä.
Kahdenkymmenen laitteen esisarja valmistui ennen
sarjatuotantoa
. Ensimmäinen laite kasattiin
tehdasvalmisteiselle piirilevylle 22. toukokuuta 2002.
Huhtikuussa 2002 tilatut komponentit saapuivat viimein heinäkuun alussa. Ensimmäiset laitteet toimitettiin heinä- tai elokuussa 2002. Kaikki 110 laitetta myytiin loppuun vuonna 2004.
Kesällä 2003 kehitin C2N232:lle liitännän Commodoren sarjaväylään. Paranneltu C2N232 matkii levyaseman tapaisia oheislaitteita, mutta jostakin syystä väyläohjaimen matkiminen, esimerkiksi komentojen lähettäminen levykeasemalle, ei onnistu. Lopetin kehittämisen joulukuussa 2003. Tuorein osittain sarjaväylää tukeva firmware-koodi ja lyhyet muistiinpanoni testatuista asioista ovat saatavilla.
En ole kiinnostunut tuottamaan uutta sarjaa C2N232:ta. Nicolas Welte on suunnitellut tuottavansa uuden laitteen, jossa on paikka sarjaväylän liittimelle, mutta tämänkaltaiset harrastushankkeet vievät joskus aikaa.
Juha Kouri ja Turo Heikkinen avustivat prototyyppien tekemisessä ja mittauksissa. Nicolas Welte auttoi vaikeasti saatavien osien hankkimisessa.
Nicolas Welte ja Wolfgang Moser ovat ehdottaneet parannuksia näihin ohjeisiin.