Juhu, endlich freigeschaltet!
Hallo erstmal, ich heiße eigentlich Stefanie und habe kürzlich vollkommen unerwartet einen Portfolio bekommen, den jemand als "Elektroschrott" entsorgen wollte.
Als gelernte Elektronikerin und begeisterte Bastlerin war ich gleich begeistert von dem Gerät. Als erstes habe ich gleich mal einen CF-Slot eingebaut, und wollte noch zusätzlich einen alten Flash-Baustein (ehemals PC BIOS) mit einbauen, letzterer wurde jedoch leider nicht korrekt angesprochen. Vermutlich weil der irgendwelche besonderen Kommandosequenzen braucht um den Software-Schreibschutz abzuschalten.
Nachdem ich anfangs ein paar kleine Fehler in der Verdrahtung hatte, hat der CF-Slot auch einwandfrei funktioniert. Soweit, so gut. Anders als in der "offiziellen" Anleitung habe ich aber keinen 74HC138 (Adressdecoder) verwendet, sondern einen 74F133 (NAND-Gate) den ich von einem kaputten 386er Board geerntet habe. Kommt aufs gleiche raus, man braucht nur irgendeinen Chip der mindestens vier Eingänge hat, und genau dann eine Null ausgibt wenn alle vier Eingänge High sind. Ein PIC Chip funktioniert allerdings nicht, ich vermute das der zu lange braucht um selbst zu "booten" und dabei den 80C88 aus dem Takt bringt. Man braucht auch nicht unbedingt einen PCMCIA-Adapter als Spender für den Steckplatz. Ich hab meinen aus einem kaputten USB-Cardreader geerntet.
However, es funktioniert jetzt. Die interne RAM-Disk hab ich auf 8kb runter gestellt, da drauf ist jetzt nurnoch der PofoCF.sys Treiber, die Autoexec.bat und Config.sys, und natürlich die internen Daten des Portfolio. Der Rest liegt alles auf Laufwerk E:
Warum E und nicht D? Weil die erste Partition für Windows sichtbar ist, wenn man die CF-Karte am PC anschließt. Und ich habe irgendwo gelesen das es da wohl zu Problemen kommen kann wenn ein neueres OS mit dem FAT12 Dateisystem nicht richtig klar kommt. Also habe ich alle wichtigen Programme auf E: gelegt, das hat der Portfolio ganz für sich allein, und benutze D eigentlich nur zum Datenaustausch mit dem PC.
Der nächste logische Schritt war dann, das ich auf dem Pofo selbst Programmieren wollte. Aber bei meiner ersten Suche habe ich fast nur Basic-Compiler gefunden, oder abgespeckte Halb-C-Varianten. Nach etwas mehr suchen fand ich dann einen "PCC", der hat auch funktioniert und spricht (fast) normales C, hat allerdings nur eine eingeschränkte Funktionsbibliothek. Nach noch ein bisschen mehr suchen bin ich dann auf
http://desmet-c.com/ gestossen, dort gibt es die (inzwischen geopensourceten) Vollversionen des Desmet C Compilers. Und siehe da, man kann vollwertiges ANSI C auf dem Pofo coden. Allerdings braucht die 3.1er Version beim kompilieren so viel Speicher, das sie beim ersten "#include" aussteigt. Die 2.51 dagegen funktioniert einwandfrei. Da ist allerdings ein Bug in der Bibliothek, den ich noch nicht so genau gefunden habe. Jedenfalls habe ich inzwischen angefangen eine C-Bibliothek speziell für den Pofo zu schreiben. Einen Teil der BIOS-Funktionen aus der technischen Referenz habe ich schon implementiert, und auch ein paar andere Aufrufe. Wer Interesse hat kann sich den aktuellen Stand auf
GitHub anschauen. Ich habe sogar Batchfiles gebastelt um das ganze zu kompilieren.
So, das wars erstmal als Vorstellung. Ich schreibe jetzt mal weiter, und freue mich darauf bald eine RAM-Erweiterung machen zu können.
Happy Hacking!