In deze Blog beschrijf ik de bouw van de PI1541 floppy drive emulator met behulp van een de PI1541 print die op een Raspberry PI 3 gestoken kan worden. Met deze hardware en bijbehorende software wordt een VIC-1541 floppy drive exact geëmuleerd.
Als eerste voorzie ik de Raspberry Pi van koelblokjes omdat de IC's bij langdurig gebruik vrij heet kunnen worden. Zo'n koelset, bestaande uit 3 precies passende koelblokjes en voorzien van 3M thermisch geleidende plakfolie, kan bv. besteld worden bij Reichelt.
De PI1541 is een IO adapter die op de 40 polige GPIO connector van de Raspberry PI kan worden aangesloten.
Aan de voorkant zitten twee DIN aansluitingen: 1 om aan te sluiten op de Commodore computer en de andere om een tweede floppy drive of printer door te lussen. Aan de zijkant zitten 5 knoppen die gebruikt worden om door de bestanden te navigeren die op de SD kaart aanwezig zijn.
Op de PI1541 zien we linksboven een jumper t.b.v. aan- uitschakelen van de ronde speaker eronder die de originele floppy drive geluiden nabootst. Daarnaast zit een aansluiting voor een externe speaker. Verder een rode en groene led voor de power en de disk activiteit. Voor de interface is een 74LS08 IC aanwezig (4 voudige AND gate) en het blauwe opsteekprintje is een bi- directionele level converter tussen de 5V van de Commodore en de 3.3V van de Raspberry PI. Rest nog een resetknop en in het midden een 4polige connector t.b.v. een 0.96 inch OLED scherm. Hierdoor is de module ook zonder beeldscherm te gebruiken.De PI1541 wordt op de Raspberry PI geplaatst zoals op de foto hieronder.
De PI1541 software wordt op de Micro SD kaart gezet zoals beschreven op: https://cbm-pi1541.firebaseapp.com/
Nu kan het geheel worden getest, mijn PI1541 blijkt te werken met uitzondering van het OLED display. Er is wel beeld via de HDMI uitgang van de Raspberry PI. Dit bleek twee oorzaken te hebben. De eerste was een fout in het configuratiebestand options.txt. Hieronder staat een gedeelte hiervan. De geel gemarkeerde instellingen zijn van belang voor het gebruikte OLED display en de aansluitingen van de PI1541 op de Raspberry PI.
LCDName = ssd1306_128x64
//LCDName = ssd1306_128x32
//LCDName = sh1106_128x64
// If you are using a LCD screen and you would like PageUp and PageDown keys to work with it (rather than the HDMI screen) then specify this option
//KeyboardBrowseLCDScreen = 1
// change startup logo on oled - 1541ii or 1541classic
//LcdLogoName = 1541ii
LcdLogoName = 1541classic
//LcdLogoName = customfile.raw
// If you are using I2C LCD you can optionally change what pins it is connected to.
// (defaults to 0 for non-split lines (Option A) or 1 for split lines (Option B))
//i2cBusMaster = 0 //SDA - pin 27 SCL - pin 28
i2cBusMaster = 1 //SDA - pin 3 SCL - pin 5
i2cLcdAddress = 60 // I2C display address in decimal and shifted. 60 == 0x78, 61 == 0x7A
Tijdens de inspectie van de PI1541 print zag ik dat de soldeerbruggen aan de onderkant van de print waren gesoldeerd voor Bus 1 i.p.v. Bus 0. Nadat ik deze had aangepast werkte het OLED display.
Geen opmerkingen:
Een reactie posten