Kirjoittaja |
Viesti |
allu
| Torstaina, 3. elokuuta, 2006 - klo 15.05: | | Kaipaisin ajatuksia seuraavasta: Pyörittelen ideaa adapterista jolla voi kytkeä Commodoren levyasemia USB-liitännällä PC-koneeseen. Adapteri näkyisi PC:llä USB-muistitikkuna. Adapterin prosessoriksi olen näillä näkymin kaavailemassa Philipsin LPC2148 ARM7 kontrolleria. Kyseisessä MPU:ssa on valmis USB-kontrolleri ja Keil:iltä saa siinä toimivan USB-kernelin(ja jopa USB-muistitikun softan). Eli ainoa itselle jäävä tehtävä on Commodoren levyasemien ohjausrutiinit sekä piirilevyn suunnittelu. Yhden ratkaisun olen miettinyt seuraavasti: Asennetaan kortille minimaalinen C64-emulaattori ja "kutsutaan" hostin(arm) puolelta levynkäsittely kernelrutiineita. Täten kikkailemalla tiedostot varmasti saisi tallennettua ja ladattua. Mutta, aivan varmasti jossain on C:llä kirjoitettuna vastaavat rutiinit koska onhan PC:lläkin ohjelmia joilla pystytään liittymään pelkällä kaapelilla Commodoren levyasemiin. Nyt nämä rutiinit täytyisi löytää. Tai sitten henkilö jolla on mielenkiintoa kehittää sellaiset. Koje voisi tukea kahtakin levyasemaa. Tällöin ne näkyisivät PC-puolelle "device8" ja "device9" kansioina. Tälläisenäänkin koje olisi joillekin tarpeellinen vaikkakin ominaisuuksiltaan melko köyhä. Koska en itse käytä C64:sta aktiivisesti niin en pysty tähän hätään keksimään mitä muuta kojeessa voisi olla. ARM-kikkula maksaa vajaan 10 dollaria, joten lopullisen laitteen hintakin jäänee alle 30 euron. Mielipiteitä?
|
itix
| Torstaina, 3. elokuuta, 2006 - klo 18.59: | | Kuusnepan levyasemahan käyttää sarjaliitäntää joten sellaisen liittäminen tavanomaiseen sarjaporttiin ei kait ole kovin monimutkaista... PC:n puolelta täytyy vain ohjata sarjaporttia. Vanhoissa Amigan Frodon versioissa oli sisäänrakennettu tuki kuusenpan levyasemalle ja levari liitettiin jollain yksinkertaisella kytkennällä Amigaan. Mutta USB on kyllä sen verran monimutkaisempi systeemi ettei se onnistu pelkällä kaapelilla mutta onko se kuitenkaan loppujen lopuksi kovin monimutkaista? Systeemin täytyy ainoastaan huolehtia sarjaliikennöinnistä levyaseman ja adapterin välillä. Sen tuskin tarvitsee itse suorittaa mitään 6510-koodia... Sisällön voisipa vielä cachettaa adapterilla ettei hidasta paahdinta tarvitse jatkuvasti vinguttaa? Tulipahan mieleen.. ikinä en ole kuusnepan levyasemaa omistanut.
|
Joanna
| Torstaina, 3. elokuuta, 2006 - klo 20.20: | | Kuusnepan sarjaliitantä ei ole Async/RS232 tyyppinen vaan lähempänä esim I2C:tä tai SPI:tä joten sen liittäminen tavalliseen UART:iin ei onnistu. Se siirtokaapeli tuli muistaakseni Amigassakin Printteriporttiin ja hyödynti sen pinnejä kaksisuuntaiseen kommunikointiin (oli kai PC:llekkin olemassa kaapeli, jos vaan muistaisi minkä niminen). Sitä en ollut varma että onko tarkoituksena tehdä C64 tiedostoja lukeva (jolloin pitää olla 1541 filesysteemi-tuki) vai yritetäänkö tuon palikan kautta lukea vain koko levy yhtenä blokkiklönttinä?
|
allu
| Torstaina, 3. elokuuta, 2006 - klo 21.30: | | Tarkoitus on nimenomaan tehdä siitä sellainen että 1541-tiedostot näkyisi sellaisinaan PC:n tiedostonhallinnassa. Tällöin PC:lle ei tarvitsisi asentaa mitään ylimääräisiä ohjelmia/ajureita vaan muistitikku ajurit riittäisivät. IEC ei olo normaali "sarjaportti" vaan enemmänkin SPI. Se on kytketty CIA piirin SP-pinniin joka on liki SPI. Sähköinen liittäminen ei olekaan ongelma vaan protokolla joka siellä langassa kulkee. Eli, kuten Joanna sanoi niin 1541-filesysteemi(ei tää voi olla monimutkainen). Ja ongelma ei ole USB puolessa. Kaikki siihen liittyvä on tehty, testattu ja toimii. Sen avulla voisi generoida .D64 tiedoston koko lerpusta. Kyseinen tiedosto näkyisi sitten siellä muiden seassa esim. "device8.d64" tiedostona. Tai jos joku pastettais tuollaisen tiedoston tiedostonäkymään niin koje kirjoittaisi imagen lerpulle. Cachetus on hyvä idea mutta prossussa on vain 40K rammia käytettävissä. Flashiä olisi 512K mutta joka lerpunvaihto kuluttaa yhden tyhjennyskerran. On niitä kyllä väh. 100000 . Harkitaan.
|
mkl
| Perjantaina, 4. elokuuta, 2006 - klo 8.02: | | CIA:n hardware sarjasiirtoa käytetään optionaalisena lisäsiirtomuotona C128:ssa, 1570/1 ja 1581:ssa, mutta VIC/C64/1540/1 käyttävät ainoastaan ohjelmallisesti toteutettua linjojen vitkutteluja yksi tapahtuma kerrallaan. MUTUa: tietokoneella käyttöjärjestelmä huolehtii tiedostojärjestelmän rakentamisesta blokkilaitteelle, myös USB-tikulle?? Kuinka huolehtia siitä, että mikrokontrollerin rakentama tiedostojärjestelmä sekä käyttöjärjestelmän näkemys siitä pysyvät yhtäpitävinä? AmigaOSsiinhan taisi olla 1541-tiedostojärjestelmä Aminetissa, mutta blokkilaitteena näkyvä USB-1541 tarvitsisi kullekin käyttöjärjestelmälle koodatun oman tiedostojärjestelmäsoftan.
|
itix
| Perjantaina, 4. elokuuta, 2006 - klo 14.17: | | USB-(massa)muistit näkyvät tietokoneelle aina samanlaisina ottamatta kantaa muistitikun sisäiseen toteutukseen. Adapterin päässä voisi olla vaikka kiintolevy tai Amigan 880K levyasema tai 128MB oikeaa muistia.
|
allu
| Perjantaina, 4. elokuuta, 2006 - klo 14.49: | | mkl: Mutussasi on pointti. Tarkoitan että muistikortin liityntä saattaakin olla blokkilaitteelle tarkoitettu alatason liityntä. Oikeastaan tämä ei ole ongelma koska kontrolleri voi rakentaa 1541-lerpun tiedostoista esim. FAT32 imagen flashiinsä. Anyway, tälläisiä käskyjä siellä näyttäisi olevan: /* SCSI Commands */ #define SCSI_TEST_UNIT_READY 0x00 #define SCSI_REQUEST_SENSE 0x03 #define SCSI_FORMAT_UNIT 0x04 #define SCSI_INQUIRY 0x12 #define SCSI_MODE_SELECT6 0x15 #define SCSI_MODE_SENSE6 0x1A #define SCSI_START_STOP_UNIT 0x1B #define SCSI_MEDIA_REMOVAL 0x1E #define SCSI_READ_FORMAT_CAPACITIES 0x23 #define SCSI_READ_CAPACITY 0x25 #define SCSI_READ10 0x28 #define SCSI_WRITE10 0x2A #define SCSI_VERIFY10 0x2F #define SCSI_MODE_SELECT10 0x55 #define SCSI_MODE_SENSE10 0x5A
|
|