Passioni e ricordi

C64C ROM kernal modding


Nel post precedente ho descritto la mia realizzazione di un programmatore di eeprom con l'utilizzo di Arduino Uno, MEEPROMMER, progetto di Mario Keller.Ieri sera ho eseguito con esito positivo un primo test di scrittura, seguendo una dettagliata guida su questo blog spagnolo: https://8bit65.wordpress.com/2014/09/08/programando-la-eeprom-parte-2/Per fare il test ho trovato in rete il file ROM di un Kernal per c64 sx, modificato con Jiffydos (Jiffydos è un Kernal chip per il Commodore C64/128, VIC-20, C-16, PLUS/4 e va installato nel Floppy e nel Commodore e incrementa drasticamente la velocità del trasferimento dati).Il file per C64c dev'essere composto dal file rom del basic + il file rom del kernal. La dimensione di entrambi è di 8kB, dunque la dimensione totale sarà di 8kB + 8kB = 16kB (equivalenti a 128kbit).Anche JiffyDOS ha una dimensione di 8kB. È necessario quindi creare un file composto da BASIC + KERNAL (che sia quest'ultimo l'originale o il JiffyDOS o altre versioni tipo Jaffy reperibili in rete).Per questo test ho usato una EEPROM 28C256, ovvero da 256 kb e perciò ho realizzato l'immagine ROM in modo che la dimensione totale equivalga al doppio di 128kb. Il comando è:copy / b basic.901226-01.bin + JiffyDOS_6.01.bin + basic.901226-01.bin + JiffyDOS_6.01.bin 27C256_nuovokernal.bin. Le immagini binarie originali della ROM Basic e Kernal possono essere scaricate da qui: http://www.zimmers.net/anonftp/pub/cbm/firmware/computers/c64/ Doposiché ho inserito la eeprom 28c256 sulla shield collegata ad arduino e questo al PC.
Poi ho avviato il software in java SimpleJBurn e ho eseguito la una lettura del contenuto della eeprom che, ovviamente, restituisce solo zeri.
Selezionata l'immagine preparata in precedenza ho eseguito la scrittura.
Terminata la scrittura ho eseguito nuovamente la lettura per verificare che il contenuto non fosse a zeri.Le eprom 27Cxxx sono compatibili con le rom originali Commodore, mentre le 28Cxxx differiscono dalle altre per i pin 1 e 27.Dunque inserendola nel C64C (già precedentemente preparato con uno zoccolo nella posizione della ROM-kernal originale) è stato sufficiente sollevare il piedino n. 1.Accesa la macchina il risultato è questo:
Dunque il primo test è OK.