Hallo Leute,
eine Sache, die mir noch am Herzen liegt, ist ein vernuenftiges Konfigurationstool fuer den FPGASID. Es gibt ja im Moment nur ein paar rudimentaere Konfigurationsprogramme - ein paar Basic Schnipsel von mir und das config-tool hier aus dem Forum. Jetzt ist aber noch die Aufgabe Bereich des Firmware-Flashens hinzugekommen. Dort benutze ich zum Testen im Moment auch einen wilden Mix aus Basic und Assembler - das kann man so auch nicht auf die Allgemeinheit loslassen.
Lange Rede kurzer Sinn: Es muss was Vernuenftiges her!
In der Vergangenheit hatten sich schon ein paar Leute bei mir gemeldet, die ein solches tool progrmmieren wollten und teilweise auch schon ganz nette Sachen gemacht hatten. Leider sind diese Aktivitaeten aber alle im Moment wieder eingeschlafen. Vermutlich, weil es doch ziemlich viel Arbeit bedeutet, so ein tool auf die Beine zu stellen. Auch gab es von meiner Seite nicht so recht Unterstuetzung, da das Thema fuer mich auch ziemlich hinten an stand. Doch das alles soll sich jetzt aendern! Waere doch gelacht, wenn wir es hier im Forum nicht schaffen wuerden so etwas auf die Beine zu stellen!
Daher hier ein offizieller Aufruf: Wer hat Lust und kann etwas dazu beitragen, dass ein solches tool entsteht?
Ich habe mittlerweile eine ziemlich gute Vorstellung, wie das tool aussehen soll und was es alles koennen muss. Das Tool soll bei aller Funktion dann natuerlich auch halbwegs gefaellig aussehen. Es duerfen sich also auch FPGASID-fremde Programmierer beteiligen, die einfach nur Spass daran haben eine verneunftige Bedienoberflaeche zu bauen. Die technische Seite (welche Register wie beschrieben werden) kann ich gerne uebernehmen.
Programmiersprache sollte Assembler sein. Entwicklung z.B. mit dem C64 Studio im Emulator, dann gibts spaeter auch richtige Assemblersourcen. Den Hardwarezugriff baue ich dann auf der echten Hardware ein.
Wer sich meldet, sollte bereit sein in den naechsten Wochen/Monaten da auch Zeit zu investieren, damit das alles nicht gleich wieder einschlaeft. Und wenn mehrere mithelfen wird es fuer die Einzelnen nicht so viel. Wenn sich (hoffentlich) ein paar Leute melden, werde ich versuchen die ungebremste Kreativitaet zu synchronisieren.
Also: Traut Euch und meldet Euch hier!
So, zum Schluss hier noch meine Notizen, wie ich mir das Tool vorstelle:
- Ansprechendes Design.
- Bedienung per Tastatur, Joystick und schoen waere auch per Maus.
- Soundeffekte bei den diversen Operationen - Besonders beim Setzen einer Grundkonfiguration zur Demonstration der Konfiguration
- Einfache Konfiguration: Umschalten zwischen folgenden Grundkonfigurationen:
- * Mono (beide SIDs auf D400)
- * Stereo (SID2 auf D420+D500+DE00)
- * Pseudostereo: Beide SIDs auf D400, aber unterschiedliche Stimmen je SID sind (de-)aktiviert.
- * Je SID separat einstellbar: 6581/8580 mode
- * Digifix-Wert (nur fuer 8580) setzen
- Expertenkonfiguration:
- * beide SID Registersaetze nebeneinander darstellen. Alles einzeln aenderbar.
- Konfigurationen sind speicherbar und ladbar auf/von Disk (name, LW# abfragen)
- Knopf: aktuelle Konfiguration ins Flash speichern (permanent machen)
- Konfiguration im Flash loeschen.Evtl flash config auslesen und anzeigen.
- Infofunktion:
- * Auslesen aller Versionsinformationen
- * Auslesen der CPU clock (mitteln und anzeigen)
- * auslesen und geeignetes darstellen der Paddle Werte
- Testfunktion:
- Produktionstest durchlaufen lassen (existiert als Basic Programm)
- Flashfunktion:A:
- Firmware updatefolgende Schritte durchlaufen:
- 1. Firmware von Disk testweise einlesen und checken ob alle Dateien vorhanden sind, dabei evtl notwendigen Diskettenwechsel erkennen und anfordern
- 2. Konfigurationsdaten als Backup sichern
- 3. Flashdateien eine nach der anderen einlesen
- 4. Vom aktuellen Bereich belegte pages loeschen
- 5. aktuellen Bereich flashen
- 6. Flash nach jeder Datei wieder frisch auslesen und mit geladenem Disketteninhalt vergleichen (verify)
- 7. naechste Datei einlesen - ggf Diskettenwechsel anfordern.
- 9. Reconfig triggern.
- B: Maintenance
- * save Konfiguration to Disk
- * restore Konfiguration von der Disk (wird benoetigt, falls ein update mit dem USB-Blaster gemacht werden soll)