Commodore 1520 plotter förmverjét először sikerült dumpolni

Nem hiszem, hogy sokan ismerik a Commodore 1520 plottert. Ez egy olyan típusú nyomtató, ami gyakorlatilag golyóstollal megrajzolja a grafikát. Ilyen működés közben:

A plotter lelke egy 6500/1 nevű, a 6502 processzor (érdemes megnézni még ezt a posztot is) köré épülő “single chip computer”, ami a rajzolást és a teljes hardver vezérlését végzi.

Elég hézagos és nehezen elérhető dokumentáció híjján annyira nehézkes kinyerni a benne levő programkódot, hogy soha senkinek nem is sikerült, pedig egy-két évente valakinek eszébe jut, hogy megint meg kellene próbálni. Az összes ezzel kapcsolatos információ annyi volt a régi doksik alapján, hogy egy speciális “Test circuit” kell ahhoz, hogy az egység teszt üzemmódba kerüljön és ki lehessen olvasni a benne levő program hexadecimális dumpját, vagy akár a benne levő vektorfontot… A hivatalos leírásból:

Applying a +10V signal to the RES line places the 6500/1 in the test mode. While in this mode, all memory fetches are made from Port PC. External test equipment can use this feature to test internal CPU logic and I/O. A program can be loaded into RAM allowing the contents of the instruction ROM to be dumped to any port for external verification.

Idén Jim Brain próbálta meg elkészíteni, illetve a rendelkezésre álló információk alapján elképzelni azt, hogyan lehet megkonstruálni egy olyasmi dolgot, ami szóra bírja ezt a régi eszközt, mintha éppen csak a Commodore cég mérnökei ellenőriznének rajta valamit.

Sok-sok kísérletezés, szakértés és toolok írása után végül sikerült a 4 kbyte bináris anyagot kiszipkázni belőle. Akit érdekelnek ennek a részletei, mindenképpen olvassa el, mert beszarás jó esettanulmány. A csipből kinyert hex dumpot Soci/Singular Crew fejtette vissza (egyébként ez is megérne egy misét, hogyan lehet 4 kb bináris dumpból értelmes futó kódot, konstansokat és adatokat rekonstruálni, mindent felcímkézni, elnevezni stb).

És hogy mi van a csomagban?

a whole control of the printer/plotter’s hardware, full serial IEC communication stack, and on top of those they still managed to squeeze a fairly complete font with 96 vector characters in!

Ez a vektorfont egyébként így néz ki:

Nagyon érdekes az egész, érdemes letölteni még a visszafejtett ROM forráskódját is!