Posts by hans61

    Ich bin ja eigentlich wegen der Tastatur hier gelandet. Aber irgendwie konnte ich es dann doch nicht lassen, auch noch den Junior Computer ][ zu bauen. Jetzt hab ich dann auch noch die PCB von IO Language Card und Backplane bestellt. Wenn schon, dann richtig. Danke für das Projekt.


    Falls jemand Interesse an Platinen hat, ich gebe gern die übrigen zum Selbstkostenpreis ab.


    forum.classic-computing.de/index.php?attachment/157245/


    forum.classic-computing.de/index.php?attachment/157244/

    Ich habe bisher die fertigen Images von hier:

    boards:sbc:multicomp:cycloneii-c:start [RetroBrew Computers Wiki]

    genutzt.

    Die Tastatur geht bei einem Teil davon, egal ob 3,3V oder 5V.

    Beim 6809 system gehen die Ersten beiden Images bis 09Jan2016. Auch die Z80 Images gehen nach ersten Tests.

    Bei den 6809 Images ab 11Jun2016 spinnt bei mir die Tastatur?

    Gibt es ein fertiges Image für den 6502? Mit FPGA muss ich mich erst noch beschäftigen.


    Fast vergessen, ich hatte keine 3,6V Z-Dioden für die Tastatureingänge da. Ich habe auf die Schnelle 3,3V genommen. Ich glaube aber nicht, das es daran liegen kann.

    Die Tastatur am Galaksija ist eine Matrix aus Schaltern. Einem Schalter einen zweiten Schalter (z.B. vom Joystick) parallel zu schalten ist kein Problem. Da beim Joystick aber alle Taster auf einer Seite verbunden sind, muss man in der Tastaturmatrix auf einer Reihe/Spalte bleiben. Beim Galaksija bedeute dies, dass der Feuerknopf auf der Space-Taste liegen würde. Mit der Tastatur oder dem Universal Keyboard Adapter sollte es funktionieren (da beides Taster-Matrixen sind. Beim PS/2-Adapter geht das nicht, da man dort die Ausgänge des EPROM kurzschließen würde.

    Wenn ich Zeit habe werde ich das mal testen. Man könnte dann den Joystick-Anschluss auch einfach in die Verbindungsleitung zwischen Galaksija und Tastatur einbinden.

    Shift-7, Numpad +, Shift-Z, Shift-Break (ESC,F2), Shift-Del (F1) habe ich geändert.

    Ihr findet es hier https://github.com/hans61/Galaksija/tree/main/PS2_Adapter

    Wie ich da bereits geschrieben habe ist das Erkennen gleichzeitig gedrückter Tasten mit der original PIC Software nicht möglich.

    Ich denke mit einer neuen Software für den PIC wäre es durchaus möglich. Durch den PS2 Tastaturadapter habe ich mich das erste Mal mit der PIC Programmierung beschäftigt. Mein Focus lag bisher mehr auf AVR und STM.

    Ich finde es sehr interessant und wenn ich mal viel Zeit habe werde ich mich intensiver damit beschäftigen.

    Ich habe bisher nur den ROM angepasst, was relativ einfach ist (Ich mach auch noch einmal eine Anleitung dazu).

    Leider liefert der PIC immer nur das letzte Byte eines PS2 Scancodes an den ROM. Das ist auch der Grund warum ich "Numpad Division -> /" nicht umsetzen kann. Da nur das letzte Byte berücksichtigt wird hat sie den gleichen Scancode wie "-".



    Das Numpad hatte ich auch nicht so auf dem Schirm, da ich sonst ein perixx Mini Keyboard benutze. Wir können zwar das Gleichzeitige drücken von Tasten nicht erkennen, aber wir können mehrere Tasten auf dem Galksija gleichzeitig betätigen.

    Ich habe mal den Ziffernblock im Numpad auf die Cursortasten gelegt und sie diagonalen Tasten auf die Betätigung der zwei benachbarten Cursortasten.


    Die aktuelle Tastenbelegung ist hier zu finden:

    Galaksija/German ROM.md at main · hans61/Galaksija
    Contribute to hans61/Galaksija development by creating an account on GitHub.
    github.com


    Ich habe auch den "Universal Keyboard Adapter" hier aus dem Forum nachgebaut und ihn an das Galaksija angepasst. Er kann dann auch zwei Tasten gleichzeitig umsetzen.

    Hallo, danke für dieses Projekt. Ich werde es nachbauen.

    Gibt es bereits eine Unterstützung für die ZX Spectrum + Tastatur?

    Ich würde mir auch eine Unterstützung des Galaksija Plus wünschen.

    Hier die Info zur Matrix:

    Wenn ich Zeit habe werde ich mal das ChibiStudio installieren und ein bisschen Probieren.

    Erkennt das System zwei gleichzeitig gedrückte Cursor-Tasten und setzt das auch so in der Matrix um?

    Entsprechende Adapter würde ich selbst basteln.

    Danke für deine Arbeit.

    So auf meinem Github (https://github.com/hans61/Galaksija/tree/main/PS2_Adapter) findet ihr jetzt auch eine etwas modifizierte Version für die englische Tastatur, sie sollte soweit in Ordnung sein. Ich habe sie gerade mit meiner deutschen PS/2 Tastatur getestet. Änderungen einzelner Tastenbelegungen sind kein Problem.

    Heute wurde auch endlich mein SD-Karten Halter und die erste Version meiner Galaksija-Tastatur geliefert. Ich musste natürlich alles sofort zusammenbauen.

    Zusätzlich zur Original Tastatur gibt es noch eine Betriebsspannungsanzeige und eine Reset-Taste. Die Leertaste kann entweder als eine Taste in der Mitte oder als zwei für eine breitere Taste ausgeführt werden.

    Wie gut das funktioniert weiß ich auch noch nicht. Mein Plan ist es die Leer- und Entertaste breiter auszuführen und auf dem 3D-Drucker zu machen. Die Tastenkappen sind auch erst einmal provisorisch, ich warte noch auf die Lieferung etwas größerer und beschriftbarer Tastenkappen.

    Sie geht sehr gut und ohne jegliches Prellen im Gegensatz zum PS/2-Adapter, bei dem ich öfter mal zwei Zeichen bei einem Tastendruck bekommen. Wenn ich Zeit habe versuche ich mich da noch mal an der Software des PIC.

    Mein Zukunftsplan ist dann noch ein Gehäuse mit integrierter Tastatur, wahrscheinlich 3D gedruckt, und auch noch ein PCB für eine Tastaturversion mit MX-Tasten.

    Ich hab mir mal den PS2 Adapter angesehen. Ich hab mich ein bisschen mit PIC Programmierung beschäftigt. Dann habe ich MPLAB installiert und versucht die Originalquelle zu übersetzen. Nach vielen Fehlversuchen musste ich feststellen, Das MPLAB nicht mehr MPASM unterstützt und sich Quellen von 2019 nicht mehr übersetzen lassen. Leider stellt Microchip Technology auch keine ältere Version mehr zur Verfügung die das noch kann.

    Zum Glück habe ich noch eine "alte" Version im Netz gefunden und konnte schon mal das Original übersetzen und zum Test brennen.

    Nach einer kurzen Analyse der Software musste ich feststellen, das ich mir all das hätte sparen können, die Software im 16F628A wird praktisch nicht genutzt.

    Sie stammt wahrscheinlich aus einem anderen Projekt und wurde nur mit einem sehr einfachen Hack für das Galaksija zweckentfremden.

    Dabei werden lediglich die unteren 7 Bit des Letzen Scann Code-Bytes einer Taste an ROM Adresse A7..A13 gelegt. A0..A6 sind die Ausgänge des Galaksija 74LS145. Die Daten D0..7 bilden die Eingänge des 74LS251 auf dem Galaksija. A14 am ROM ist dann noch mit der Shift-Taste der Tastatur "verbunden". (1=Shift gedrückt, 0=nicht gedrückt)

    Das bedeutet, die Scann Codes können mit gewissen Einschränkungen über den ROM in beliebige Tastatureingaben des Galaksija umgewandelt werden. Die schlechte Nachricht, da immer der Scann Code der letzten gedrückten Taste am ROM anliegt kann die Mehrfachbetätigung von Tasten nicht ausgewertet werden.

    Lange Rede, kurzer Sinn einzig der ROM bestimmt die Tastenzuordnung. (Wenn man nicht das ganze Programm neu schreiben will)


    Da ich es noch nicht zu einer englischen PS/2 Tastatur geschafft habe, habe ich zuerst mal einen ROM für die deutsche Belegung gemacht:

    gal_keyb_adapter_rom_de.zip


    Ihr findet auch alles hier:

    GitHub - hans61/Galaksija
    Contribute to hans61/Galaksija development by creating an account on GitHub.
    github.com


    Bei Gelegenheit schau ich mir noch die englische Belegung an. Wenn ich viel Lust habe kann ich ja mal versuchen den PIC neu zu programmieren. Ich bin mir aber noch nicht sicher ob das mit der Mehrfachbetätigung von Tasten in den PIC passt.


    Tastenbelegung der DE Version BRK = ESC, RPT = Pos1, DEL = Entf, LIST = Bild runter oder ^, Backspace hab ich mit Cursor links belegt (löscht letztes Zeichen), Wünsche können geäußert werden.

    Ich konnte nun endlich meinen Galaksija zum Laufen bringen. Danke auch an die Unterstützung von Digitalmax. Die wesentlichen Änderungen waren erst einmal C4 (für sie vertikal Synchronisation) auf 47nF zu verkleinern. Mein DL123 hat mit den originalen Werten gar keinen Impuls abgegeben, ich habe auch da die Werte von Digitalmax übernommen (R12=1,2k und C3=10nF). Des Weiteren habe ich C19 am Videoausgang vergrößert, aktuelle verwende ich 100µF. Der Rechner läuft mit 5V.



    Eine Stolperfalle war für mich der PS/2 Tastaturadapter. Ich hatte bisher noch nichts mit PIC gemacht (nur AVR und STM) und hatte einfach einen PIC 16F628 bestellt. Der wollte natürlich nicht. Bis ich dann im Datenblatte entdeckt habe, dass der ohne A keinen internen Oszillator besitzt (glaube ich zumindest). Mit einem PIC 16F628A klappte es dann auf Anhieb.

    Mein Zweiter Fehler war ein 100 Ohm Widerstand, der sich in meinem 10k Fach verirrt hatte und versehentlich ist er als Pull-Up am 74251 gelandet war. Dadurch haben über den Adapter einige Tasten gefehlt, bei der Simulation mit Tastern am Board gingen sie aber. Daher habe ich den Fehler zu Erst beim Adapter gesucht bis ich ihn bemerkte (ein Schalter zieht den 100 Ohm Widerstand auf 0 der Ausgang am ROM schafft das nicht).

    Wenn ich Zeit habe werde ich mal einen Blick auf die Software des PS/2 Tastaturadapter werfen. Ich habe zwar noch nie PIC Assembler gemacht, aber die Quelle ist gut Kommentiert.


    Bei der SD Erweiterung ist mit bisher folgendes aufgefallen:

    - Die SD-Karten-Initialisierung wird nur beim Start aufgerufen. Die Karte muss also vor X=USR(&F000) eingelegt werden und kann nicht mehr gewechselt werden.

    - Die Karte muss FAT16 formatiert sein.

    - Es gibt das Kommando DIR und das Laden eines Programmes über den Namen (ohne Erweiterung). Gibt es noch mehr, gibt es eine Anleitung? Es scheinen keine Unterverzeichnisse unterstützt zu werden.

    - Bei der SD Erweiterung funktioniert der Unterstrich nicht, Dateinamen mit Unterstrich sind nicht aufrufbar. Empfehlung sind sowieso Dateinamen mit maximal 8 Zeichen.


    Gibt es irgendwelche Software Quellen zu der SD Erweiterung?


    Die Soundkarte hat auf Anhieb funktioniert.


    Ich habe über eine Tastatur nachgedacht und einen ersten Entwurf gemacht. (https://github.com/hans61/Galaksija/tree/main/eagle)

    Danke für die Hinweise, ich werde sicher noch Fragen haben, wenn ich es baue/inbetrieb nehme. Danke auch für den Sprachhinweis, ich wäre nicht darauf gekommen (obwohl ich 7 Jahre Russichunterricht gehabt habe).

    Das mit der Versorgungsspannung hatte ich schon gelesen. Ich habe Labornetzteile, aber das ist nicht das Ziel. Es sollte schon mit 5V funktionieren. Digitale Schaltungen sollten nicht spannungsabhängig sein, ich vermute das Problem eher in den beiden Monoflops für hsync und vsync. Wenn ich es rechne (und mich nicht verrechnet habe), entsprechen die Timings nicht ganz der Norm. Ich bin aber mehr der praktische Typ und Messe lieber, wenn es gebaut ist.

    Mich würde interesssieren welche IC's kongret für den 74xx123 eingesetzt werden (Sie könnten auch etwas abweichen im Verhalten (TTL/CMOS)).

    Meine PCB sind Gestern in Leipzig angekommen, erfahrungsgemäß machen sie jetzt noch mal eine zickzack Rundreise durch Deutschland.

    Wenn die Leiterplatten da sind sage ich Bescheid. Ich denke Anfang nächster Woche (sind aktuell bei der Zollabfertigung in China). Mit dem günstigsten Versand (Großbrief) bin ich bei 10€ pro Set (Galaksija,Tastaturadapter und Soundkarte). Alles Andere wenn es soweit ist über PN.

    Das mit der Tastatur war ein Missverständnis. Ich hatte deinen Adapter in der Dropbox übersehen. Die PS/2 Tastatur ist erstmal die einfachste Lösung. Ich denke gerade über eine Retrotastatur in einem anderen Projekt nach, je nach dem für welche Taster man sich entscheidet wird das aber nicht ganz billig.


    Ich habe mich dafür entschieden einen Galaksija zu bauen und erstmal alle 3 PCB (Galaksija,Tastaturadapter und Soundkarte) bei JLCPCB bestellt. Wenn jemand Interesse hat ich würde 3 davon abgeben.

    Interessantes Projekt. Ist der ROM das Original vom GalaksijaPlus? Ich sehe im Nachbau eine SD Karte. Interessant ist die native Schnittstelle. Wie wird sie im System verwendet? Wo finde das PCB/Schaltung für die Tastatur-Platine? Ich denke darüber nach einen nach zu bauen.

    Danke erstmal allen, das Wordstar aus dem V20-MBC Image läuft. Ich hatte vorher andere ausprobiert, die sind nicht gestartet und der Rechner hat sich aufgehängt. Die anderen Sachen probiere ich später aus.


    Gruß Hans

    Danke, dass mit den Dateien hilft schon mal weiter. Ich werde es probieren.

    Es gibt viel CP/M Software die Z80 spezifisch ist. Die meisten CP/M Rechner hatten bereits einen Z80. Apple Z80-Karte, C128,...

    WordStar gibt es z.B. auch für CP/M-86, also für einen ganz anderen Prozessor.

    Ich versuche gerade ein paar CP/M Programme auf meinem Novasaur (https://hackaday.io/project/16…aur-cpm-ttl-retrocomputer) zum laufen zu bringen.

    Mit verschiedenen BASIC's hat das schon gut geklappt.

    Bei WordStar bin ich bisher gescheitert. Kann mir jemand sagen wo ich Software explizit für den 8080 finde (kein Z80 Code).

    Welche Dateien werden für WordStar zwingend benötigt? Es muss auf eine 250k RAM-Disk passen.

    Ich habe das Image vom V20-MBC (https://hackaday.io/project/17…080-cpu-homebrew-computer) extrahiert, da ist aber die WordStar Disk 700k groß.

    Kann jemand einen Texteditor empfehlen, der auf 8080 CP/M läuft und besser als ED ist?

    Ausführbare Programme auf dem Gigatron können aus 4 Quellen kommen:

    1. Aus dem ROM den Gigatron, sie werden im Startmenü angezeigt

    2. Aus dem internen Flash des Arduino (Pluggy Reloaded, MyPluggy, Arduino Uno)

    3. Vom PC über die serielle Schnittstelle des Arduino

    4. Von der SD-Karte am Arduino

    Alles was vom Arduino kommt (2.-4.) wird mit dem Loader, einem Programm aus dem Gigatron ROM, in das Gigatron geladen.

    (Loder und Strg+F1 (F2..))

    Alles vom PC wird mit dem Script sendFile.py (im Ordner Utils) übertragen und startet den Loader automatisch.

    Will man ein Programm von der SD-Karte laden, so wird ein zusätzlichen Programm auf dem Gigatron benötigt, der "SD Card Browser".

    Der "SD Card Browser" wird entweder aus dem ROM geladen (Spezielles ROM und ist dort im Menu enthalten) oder aus dem Flash des Pluggy Reloaded (Strg+F2). Nur die NO_ROM Version enthält den Browser im Flash.

    Ich bevorzuge die NO_ROM Version, weil es dann egal ist ob das ROM den Browser enthält oder nicht.

    Über die serielle Schnittstelle lässt sich das Gigatron ebenfalls mit einem Terminalprogramm steuern. In der NO_ROM Version fehlen in der Terminalunterstützung Teile der Hilfe und das Echo. Sie mussten deaktiviert werden, damit der Platz im Flash für den "SD Card Browser" ausreicht.

    Die wenigsten werden allerdings das Terminal überhaupt nutzen.

    Der Sketch unterstütz nur folgende Konfigurationen:


    Arduino Uno config ATmega328

    Arduino Nano config ATmega328

    Arduino Micro

    ATtiny85 config

    Arduino Micro config ATmega32u4

    Pro Micro config ATmega32U4


    für andere Boards existieren keine Pin-Definitionen im Sketch.

    PluggyReloaded benötigt zwingend sie Pro Micro Konfiguration.

    Also in der Arduino IDE immer Sparkfun Pro Micro und ATmega32U4 (5V, 16Mhz) auswählen.

    Nur das Kompilieren sollte dann fehlerfrei gehen.

    Eine Anleitung und die Original Files gibt es nochmal hier (Dropbox des Autors):

    https://forum.gigatron.io/viewtopic.php?t=279


    Als auch wenn sich das Board als Leonardo meldet, Sparkfun Pro Micro wählen. Einige meiner Board haben das auch.


    Wenn du das Board aus deinem Linkt gekauft hast, da gibt es einen Jumper (Lötbrücke) J1 neben dem USB-Anschluß.

    Der muss zwingend verbunden sein (Lötklecks drüber) sonst geht es nicht, (Ist im Lieferzustand offen)


    Gruß Hans

    Ich war vor ca. 40 Jahren von einem Apple //e begeistert. Und von dem was Steve Wozniak da Designmäßig geleistet hat. Darum auch nach meinem Wunsch eines Apple Clone. Woz hat den Apple aus einfachen und billigen Teilen entworfen. Hier wurden Spezial Chips erwähnt, bitte mal genau Bezeichnung (da ist mir nichts bekannt). Er hat gern kleine ROM's eingesetzt, die heute nicht mehr erhältlich sind, die sollten sich aber leicht nachbilden lassen. Vielleicht auch nicht mehr erhältliche Logik Chips, die sollten auch leicht zu ersetzen sein (PAL).

    Ein moderner SRAM, 64K sollten reichen. Es gibt sehr viel Software für den //e und "keine" braucht mehr, und ich will keine neue schreiben. Mehr vielleicht für eine RAM Disk entfremden?

    Das Original hatte (glaube ich) 8 Slots, mir würden auch 4 reichen. Eine Original Floppy mit Controller sollte möglich sein. Ich weiß nicht wer da noch viel mehr Karten braucht.

    Die 80 Zeichen Karte sollte enthalten sein. Die Z80 Karte sollte optional bestückbar sein. Das PCB Format so das es in ein Original Apple II Gehäuse passt und die Slots an der richtigen Stelle sein (kann also auch etwas kleiner sein).

    Was ich noch nicht gelesen habe, einen zeitgemäßen Videoausgang würde ich mir wünschen (SVideo/VGA).

    FPGA ist für mich keine Lösung, des ist für mich das Gleiche wie ein Apple Emulator auf einem Raspberry Pi (20€?).

    Ich hatte mir auch schon den Repro II angesehen, aber er ist Erstens richtig teuer (RAM >100€) und Zweitens immer noch nicht fertig. Da könnte man sich allerdings die Stromversorgung abgucken.

    Was ich noch vergessen hatte. 252K vom RAM werden als RAM-Disk Laufwerk A: genutzt und sind über eine CR2032 gestützt (SIe bleiben also beim Ausschalten erhalten), soll 5 Jahre halten und könnte im Betrieb gewechselt werden.


    Über den Apple ][ würde ich mich freuen. Aber ich verstehe momentan noch zu wenig von CPLDs und man müsste sich auch erst intensiv mit der SChaltung des Apple beschäftigen.

    Ich kenne bisher nur ein Projekt was das versucht hat, der Retro II (ist nie richtig fertig geworden).

    https://forums.parallax.com/di…-compatible-6502-computer

    https://github.com/jonthomasson/retroii

    Aber er verwendet sehr teure Teile. Schon der Dual-RAM den er einsetzt kostet das Stück über 100€. Ich denke mit einem Modernen RAM/ROM dem W65C02 und einem CPLD 5V kompatibel (XC95144XL-10TQG144C o.ä.) sollte es wesentlich günstiger gehen.

    Mir fehlt aber die Zeit und das Wissen um so ein Projekt durch zu ziehen.

    Ich weiß nicht wann es Gerberfiles geben wird. Im Moment sind noch keine veröffentlicht. Ich hab mir ein PCB von Alastair Hewitt schicken lassen. Preis war in Ordnung, nur der Versand aus den USA ist recht teuer. Er gibt auch das PCB mit den Teilen zusammen ab und plant Sets mit Handbuch und Gehäuse ähnlich den Gigatron. Darum denke ich auch, dass er sich mit der Veröffentlichung der Gerberdaten zeit lassen wird.


    Für den Datenaustausch ist die serielle Schnittstelle vorgesehen. Da sein Ziel eine Internetverbindung ist soll speichern und laden auch über FTP möglich sein.


    Er hat auch einen Erweiterungsport vorgesehen, für den auch auch schon eine Testplatine gibt.

    https://hackaday.io/project/16…702-expansion-board-again

    Ich könnte mir da auch einen Massenspeicher vorstellen.


    Die Firmware findet man im File-Bereich bzw. auf seinem git

    https://github.com/ajhewitt/novasaur


    PS. zum Thema CPLD, ich warte noch auf Jemand der einen Apple ][ Clone baut (mit funktionierenden original Slots) und die ganze Logik drumherum in einen packt. Das fände ich auch cool.

    Mein neuer Novasaur,

    https://hackaday.io/project/16…aur-cpm-ttl-retrocomputer

    Daten:

    - Dual-Prozessor-CPU/GPU (Harvard-Architektur)

    - 33 MHz Punkttakt; 16,5 MHz Datenpfad; 8,25 MHz pro Prozessor (~3,5 CPU MIPs)

    - 256k ROM: 96k ALU; 64k natives Programm; 64k Cold Storage; 32k Schriftarten

    - 512k RAM: 7 Bänke mit 64k Benutzer, 60k Display, 4k System

    - 76 ALU-Funktionen einschließlich Multiplizieren/Dividieren, System und mathematische Funktionen

    - Bitmap-Grafiken: Hochauflösender Modus bis zu 416x240 mit 8 Farben und 4 Dithering-Mustern. Lo-Res-Modus bis zu 208x160 mit 256 Farben, doppelt gepuffert

    - Textmodus: 8 Farben FG/BG; 256 Zeilen Puffer; bis zu 104x60 mit 8x8 Glyphen; 80x36 und 64x48 Zeilen mit 8x16 Glyphen

    - Audio: 4-stimmige Wavetable-Synthese; ADSR; 8-Bit-DAC; 8Hz-4,8kHz

    - PS2-Tastatur: Native Schnittstelle

    - Serielle RS232-Schnittstelle: Vollduplex, RTS/CTS-Flusskontrolle, 9600 Baud

    - Erweiterungsport: 7 adressierbare 8-Bit-Registerports, 4 Interrupt-Flags

    - Chipanzahl: 34 TTL (22 CPU, 12 GPU), 1 ROM, 1 RAM, 1 PAL, 4 analog.

    - Gate-Anzahl: 1.425 (935-CPU, 490-GPU)

    - PCB-Größe: 8"x5" (200x125mm) doppelseitige Platine.

    - Leistung: 6V bei 1,6 A (10W)


    Die CPU emuliert einen Intel 8080 es läuft CP/M und es ist ein Web-Brauser (Textmodus) geplant.


    Im Vergleich zum Gigatron: