Infos

Sie befinden sich in den Archiven der Kategorie C128.

Februar 2012
M D M D F S S
« Jan    
 12345
6789101112
13141516171819
20212223242526
272829  
Kategorien

Archiv der Kategorie C128

C128 SID-Player (1)

Der C128 bietet zwar ein erweitertes BASIC 7.0 das (mit PLAY & SOUND) eine komfortable Programmierung des SID erlaubt, doch reicht das eben nur für einfache Melodien und Klänge. Richtige SID-Tunes abzuspielen, wie man sie von der High Voltage SID Collection (HVSC) kennt, ist jedoch nicht möglich, denn diese wurden ja auf einem C64 für den C64 erstellt und haben eine integrierte Abspielroutine.

Für mein derzeitiges Dauerprojekt hilft mir der übliche Hinweis: “willste SID-Musik, schalte einfach den C64-Modus an” recht wenig. Ich brauche SID-Musik im C128-Modus! Bleibt die Option: selber machen! Damit ergeben sich gleich mehrere Probleme: Erstens gibt es kein geeginetes Tool um SID-Musik für den C128 zu erstellen; alles konzentriert sich auf den C64 (High Voltage Music Engine Collection) und der C128 Music Maker, falls er denn geeignet wäre, läßt sich im Web nicht aufspüren. Zweitens habe ich kein Talent als Komponist oder Musiker. Drittens keine Zeit um mich da einzuarbeiten.

Diese Erkenntnisse vor Augen konnte es nur heißen: Alles zurück auf Start, die Situation neu analysieren! Ein SID-Tune liegt in der Regel (mit vielen Ausnahmen) ab $1000 im Speicher eines C64. Das ist bei einem Commodore 128 ein ziemlich blöder Platz, liegen hier doch nicht ganz unwichtige Systemvariable, die Daten der Funktionstastenbelegung und der DOS-Kommandopuffer. Frei verfügbar ist das RAM erst ab $1300.

In mein Programm bot sich der freie Bereich ab $2000 an und ein Programm von $1000 nach $2000 zu verschieben, erschien mir als ein lösbares Problem. Für die praktische Umsetzung suchte ich mir ein geeignetes SID-File entfernte den SID-Header änderte die Startadresse auf $2000 und korrigierte im Monitor alle Sprünge und Adressen von $1XXX zu $2XXX. Es gab dann noch ein paar Tabellen für indirekte Adressierungen, die ebenfalls angepasst werden mussten. Das ganze dauerte etwa zwei Stunden.

Als nächstes benötigte ich eine kleine Initialisierungsroutine für den im SID-File integrierten Player. Dazu modifizierte ich ein passendes Code-Beispiel von C64 Codebase. Neben den neuen Einsprungadressen musste ich dem C128 mitteilen, dass sein BASIC-IRQ, mit dem er neben PLAY und SOUND auch diverse SPRITE- und GRAPHIC-Befehle steuert, nun unerwünscht sei. Dies erledigte folgendes Code-Schnipsel:

lda #$ff
sta $d8 ; deaktiviert BASIC IRQ
lda #$c0
sta $0a04 ; deaktiviert VIC Updates

Die Stunde der Wahrheit rückte näher. Der modifizierte SID-File wurde nach $2000 geladen und die spezielle Initialisierungsroutine gestartet. Das Ergebnis war: Nix! Irgendwo in den Tiefen der Play-Routine mussten mir ein paar umzustellende Adressen entgangen sein. Die Vermutung, dass das Tabellen betraf, lag nahe. An dieser Stelle wurde mir klar, dass der Aufwand für die Umstellung eines SID-Tunes erheblich war und eine vollständige Code-Analyse erforderte. Sowas kann man einmal machen, aber da es jede Menge unterschiedlicher Play-Routinen in SID-Files gibt, würde diese Aufgabe für jedes File aufs Neue erforderlich sein und somit ein ziemlich mühseliges Unterfangen darstellen.

An dieser Stelle wurde klar: Es ist dringend geboten eine bessere, allgemeingültige Lösung anzustreben. Die könnte in einem universellen Code-Relocator (ich höre schon die Leser lachen) oder einem grundsätzlich anderen Problemlösungsansatz bestehen. Doch dazu später mehr.

Ein TFT am C128

Vor einiger Zeit hatte ich versucht das RGB-Signal meines C128 (80-Zeichen-Modus) in ein VGA-Signal zu wandeln, um ein TFT als Bildschirm nutzen zu können. Mein 1901-Monitor funktioniert zwar noch (und es gibt nichts besseres für den C128), aber er braucht leider mehr Platz, als auf meinem Computertisch verfügbar ist. Der von mir auf dem letzten Treffen der GIG-Süd gebastelte RGBI-zu-RGBA-Konverter erfüllte leider nicht die in ihn gesetzten Erwartungen und mein schöner RGB-VGA-Wandler zeigte kein Bild, nicht einmal ein paar verrauschte Pixel, auf dem angeschlossenen VGA-Bildschirm.

RGBI zu CGA - Umschlag

Doch vor einigen Tagen kam ein Päckchen aus Amerika (siehe oben) und nun bin ich glücklicher Besitzer eines schönen kleinen Stücks Hardware, dass dieses Problem beheben wird. Quell des Glücks war das Forum auf Commodore 128 Alive. Dort wird unter der Bezeichnung Commodore 128 Video DAC ein spezieller RGBI-CGA-Wandler angeboten, der die korrekte Pegelwandlung durchführt, um mit Hilfe des schon oben erwähnten RGB-VGA-Wandlers die Videosignale des VDC auf einen VGA-Monitor zur Anzeige zu bringen. Die lange Vorgeschichte bis zur Entstehung dieses von vielen herbeigesehnten Elektronikwunders kann man ebenfalls im Forum nachlesen.

RGBI zu CGA - Zwei Boards

Ein fertig aufgebautes Board kostet $56.00 und der Zoll genehmigt sich darauf noch 19% Mehrwertsteuer, doch das ist die Sache wert. Zwar hatte ich persönlich noch keine Gelegenheit zum Lötkolben zu greifen und den Anschluss zwischen diesem Adapter und dem VGA-Konverter herzustellen, doch Dirk Vroomen hat das Zusammenspiel von C128, Video DAC, CGA-VGA-Konverter und TFT-Monitor bereits getestet und auch ein schönes Bildschirmfoto gepostet, dass ich hier der Bequemlichkeit halber spiegele. Auch tokra zeigt sich begeistert und liefert gleich einen Link auf Fotos von seiner Projektorleinwand. Und ja, das was der Beamer da zeigt, sind alles vom VDC erzeugte Bilder!

RGB2VGA-Converter

Vor einigen Jahren hatte ich hier schon einmal über einen RGB zu VGA Konverter für den C128 berichtet. Nun habe ich mich entschlossen eigene Experimente durchzuführen und mir das “CGA/EGA/YUV to VGA Arcade HD-Converter PCB” (Modell GBS-8220) bei JammaBoards (USA) besorgt. Bei derzeit nur $39,95 plus $8.57 Versand (ich habe die günstigste Variante ohne Versicherung genommen) kann man schon mal einen Fehlkauf riskieren. Nach zweieinhalb Wochen, am Freitag, ist das ersehnte Päckchen angekommen.

RGB2VGA-Konverter

Das Board kommt, wer hätte das gedacht, aus China und der Hersteller Gonbes bietet noch weitere Konvertertypen an. Das mitgelieferte Manual ist ziemlich chinesisch und der englische Teil ist nicht aussagekräftiger als die Website von JammaBoards.

Als erstes werde ich mir wohl einen RGBI zu RGBA-Konverter basteln müssen (da gab es ja mal eine Anleitung auf der Emuecke; leider ist dieser Text noch nicht wieder online). Tja, und sollten meine C128-Experimente mit dem Konverter scheitern, dann kann ich darüber ja immer noch meine Wii an einen VGA-Monitor anklemmen…

NUN-Joy: Nunchuk als Joystick

Nachdem ich Ende letzten Jahres im Forum64 von einem käuflichen Adapter gelesen hatte, der es erlaubt einen Wii™ Nunchuk® als Joystick zu nutzen, konnte ich nicht umhin, diesen umgehend zu bestellen. Jeff Ledger hatte ein vergleichbares Interface bereits Anfang 2009 konstruiert [Blog-Link] und schon damals hatte mich die Vorstellung, ein C64-Spiel durch Herumgefuchtel in der Luft zu steuern, stark fasziniert. Seit heute nun sind zwei Adapterplatinen in meinem Besitz.

NUN-Joy Joystick-Adapter

Der als NUN-Joy bezeichnete Joystick-Adapter konvertiert die Signale eines Wii™ Nunchuk® -Controllers in die eines “normalen” Joysticks für Homecomputer. Dabei kann er für die Richtungen entweder die Signale des Steuerknüppels verwenden oder alternativ die der Neigungssensoren. Der NUN-Joy ist mit solchen Joysticks für Konsolen und Rechnern kompatibel, die über einen neunpoligen SUB-D Stecker angeschlossen werden z.B. Atari , VC20 , C64 , C128 , Amiga , CPC usw.

Dieses Wunderwerk der Mikroelektronik ist für 30 Euro über die Internetseiten des ABBUC (ATARI Bit Byter User Club e.V.) beim HardwareDoc zu erhalten. Dort finden sich auch weitere Detailinformationen.

CBM-Command 2.0 Beta 2 erschienen

Pünktlich zum Jahresanfang hat Payton Byrd ein Bugfix der ersten Beta-Version des Programms CBM-Command 2.0 ins Netz gestellt. CBM-Command ist, wie der Name schon nahe legt, ein dem klassischen Vorbild “Norton Commander” nachempfundener Dateimanager für diverse CBM-Speichermedien (1541, 1571, 1581, CMD, uIEC/SD etc.) und verschiedene Commodore-Rechnertypen (VC20, C64, C128, Plus/4). Dateimanager bzw. -browser gibt es mehrere für den C64. Erwähnenswert sind hier DraCopy/DraBrowse (für verschiedene CBM-Systeme) und natürlich der elegante Fibr (nur für C64). Letzterer wird leider derzeit nicht weiterentwickelt. DraCopy und CBM-Command haben einen vergleichbaren Funktionsumfang und wurden beide mit CC65 entwickelt, was gewisse Einschränkungen bei der Geschwindigkeit (da lacht der SuperCPU-Besitzer) aber auch flexible Anpassung an diverse Computermodelle zur Folge hat.

CBM-Command - Titelbild am C64

Die Einschaltmeldung von CBM-Command beim C64

CBM-Command - Titelbild am C128 Die Einschaltmeldung von CBM-Command beim C128: Das Programm startet immer (und nur) im 80-Zeichen-Modus (die Abbildung zeigt nur die linke Bildschirmhälfte)


CBM-Command verfügt über die üblichen Funktionen zum Umbenennen und Löschen von Files sowie wie zum DOS-Kommandos senden. Beim Löschen des aktuellen Files wäre es hilfreich, wenn dessen Dateiname zur Sicherheit nochmal in der Sicherheitsabfrage auftauchen würde, doch das ist nicht der Fall. Immerhin gibt es eine Sicherheitsabfrage. Diese entfällt, wenn man mehrere markierte Dateien löscht - ups!

Dateimanager CBM-Command (C128-Version) CBM-Command auf dem C128: Das Programm zeigt die Dateien von zwei Laufwerken an. Das Löschen eines Files wird mit einer Sicherheitsabfrage verifiziert


CBM-Command kann mit allen drei klassischen Disk-Images (D64, D71, D81) umgehen, Textdateien anzeigen, in Unterverzeichnisse (Subdirectorys) und Images hineingehen und Dateien kopieren. Dabei werden jetzt auch REL-Dateien berücksichtigt.

Insgesamt ein nicht allzu fixes, schlichtes aber flexibles und erfreulich nützliches Tool. Aktuelle Entwicklungen können auf Commodore 128 & PET alive nachverfolgt werden.

Ein Osterei im Juni!

Dass auch der C128 über ein Osterei (Easter Egg) verfügt, ist eine altbekannte Tatsache [z.B. hier oder da nachzulesen] und ich hatte deshalb auch nie-nicht-niemals vor, die Sache mit dem

SYS 32800,123,45,6

hier im Blog auch nur am Rande zu erwähnen. Doch nun muss ich schon zum zweiten Mal mit diesem Grundsatz brechen (hier war es das erste Mal).

Wie LokalHorst im Forum auf Commodore 128 Alive! berichtet, ist es ihm gelungen, ein weiteres Easter Egg und seine Aktivierung zu entdecken. Das ist nach so vielen Jahren schon eine kleine Sensation.

Easter Egg in CP/M mode (Z80 Rom) [Bild: LokalHorst]

Das Osterei verbirgt sich im wenig beachteten Z80-ROM des C128 und Lokal Horst schreibt [Easter Egg in CP/M mode (Z80 Rom)]: “Während der Disassembling des Z80-ROMs fand ich etwas ähnliches {Anm.: etwas ähnliches wie das oben beschriebene Esaster Egg} auch im CP/M. Man kann es mit der folgenden Tastensequenz aktivieren:

<ESC>=88<ESC>e<RETURN>

Die Aktivierung ist in der ROM-BIOS-Funktion “Insert-Line” versteckt.

Diamond Dungeon Japan-Font

Der für das Spiel Diamond Dungeon verwendeten Japan-Font, den ich aus verschiedenen Vorlagen unter Berücksichtigung der Möglichkeiten einer 8×8-Matrix zusammenkomponiert habe, kann hier als C64- und C128-DIN-Version heruntergeladen werden. Es werden nur Großbuchstaben (und einige grundlegende Sonderzeichen) unterstützt. Deshalb wird der Font als Großschrift/Grafik-Zeichensatz angeboten.

Japan-Font für den C64
Japan-Font für den C64 (bzw. als C128 ASC-Zeichensatz)

Japan-Font für den C128 (DIN)
Japan-Font für den C128 (DIN-Zeichensatz)

Diamond Dungeon

Auf der letzten HomeCon habe ich ein neues Projekt begonnen. Ein weiteres neben vielen, die fast allesamt unvollendet vor sich hin rotten. Insofern bin ich besser als Franz Schubert, der hatte ja nur eine einzige Unvollendete. Wie dem auch sei, ich hatte unlängst eine Inspiration durch das Spiel Labyrinth - Das Duell von Ravensburger. [Ein ganz, ganz entfernt ähnliches Labyrinthspiel hatte ich vor etwa 30 Jahren schon mal für meinen alten CBM-Rechner umsetzen wollen und ich würde mich nicht wundern, wenn in irgendeiner alten Krempelkiste noch ein paar Skizzen dazu herumlägen.]

Als erstes schwebte mir eine möglichst nahe Kopie des Labyrinth-Brettspiels vor, aber dazu hätte ich Hiresgrafiken benötigt und die dazu erforderlichen Datenmengen will ich aus einem guten Grund vermeiden. Zudem bin ich kein Pixelgenie und müsste diese Arbeiten “outsourcen”. Daher habe ich mir einen neuen “Handlungsrahmen” ausgedacht und setz das ganze in einem japanischen Stil um. Manga liegt ja im Trend.

Diamond Dungeon Titel Girl (Draft)

Einen Arbeitstitel hat das ganze auch schon “Diamond Dungeon”. Wie der Zusatz zum Originalspiel “Das Duell” schon vermuten läßt, handelt es sich um ein Spiel für 2-Spieler. Und genau hier kommt eine besondere Eigenschaft des C128 zum Tragen: Er kann zwei Bildschirme verwalten! Um den Duellanten ein ungestörtes Spiel zu ermöglichen, erhält jeder seinen eigenen Bildschirm. Im Grunde ist es wie ein 2-Personen-Netzwerkspiel auf einem Rechner. Ein Netzwerk wäre auch die einzige Möglichkeit, das Spiel auf einem C64 umzusetzen.

Da ich beide Bildschirme benötige und die Ansteuerung des 80-Zeichenbildschirms über den VDC ein echter Flaschenhals ist, wäre Hiresgrafik vieleicht ein Problem. Ich werde also mit einem geänderten Zeichensatz arbeiten. Um das Erscheinungsbild auf beiden Bildschirmen einheitlich zu halten, wird der VDC dabei auf 40-Zeichen-Betrieb gestellt. Leider scheint die C128-Emulation in VICE ein Problem mit dieser Betriebsart zu haben. Wieder ein Grund mehr, unbedingt das Originalgerät einzuschalten.

Bisher gibt es einen ersten Entwurf zum Titelbild (es basiert auf einer nach HiRes konvertierten Grafik eines unbekannten Manga-Künstlers; s.o.), eine vage Vorstellung vom Spielkonzept, ein ebenso vages Spielfeld, eine ungeprüfte Routine zur Feststellung der korrekten Verknüpfung von Labyrinthein- und -ausgang und einenTeil des Zeichensatzes. Dabei handelt es sich um den im Spiel verwendeten Japan-Font, den ich aus verschiedenen Vorlagen zusammenkomponiert habe.

Als Entwicklungsdauer setze ich mal 1 Jahr an, was für meine Verhältnisse ziemlich schnell wäre. Ich hoffe, es gibt genügend HomeCons dieses Jahr, damit ich dort die erforderliche Ruhe finde, um bei diesem Projekt voranzukommen.

C128-Halloween-MiniDemo

Beim Stöbern auf meiner Festplatte, bin ich vor geraumer Zeit über die 128′er aktuell-Archive gestolpert. Den wenigen verfügbaren Informationen zufolge, handelte es sich dabei um eine deutsche PD-Reihe. Gleich im ersten Archiv sprang mit das Programm “c128-halloween” ins Auge. Das Ergebnis sieht man hier:

Animierter Kürbis auf einem C128
Der (animierte) Kürbis rollt auf dem C128 mit die Augen (VIC-Graphic)

Die Ausgaben 1 bis 9 und 14 bis 18 der 128′er aktuell sind auf einem kanadischen Server zum Download verfügbar. Falls noch jemand die Originaldisks bzw. Diskimages hat, oder eine der fehlenden Ausgaben sein Eigen nennt, möge er sich bitte melden.

C128 als Filmstar?

Die Kurhaus Production aus Baden-Baden dreht ihren ersten Langspielfilm für den Südwestrundfunk (SWR) in Karlsruhe und sucht für die im Jahr 1986 angesiedelte Geschichte noch Produkte aus dieser Zeit. Benötigt wird unter anderem ein betriebstüchtiger Commodore 128 nebst Zubehör.

Wer also im Raum Karlsruhe wohnt und sein Schmuckstück als Filmrequisite (leider nicht als Filmstar) über den Bildschirm flimmern sehen möchte, sollte sich bei den Filmemachern melden. Weitere Informationen gibt es auf ka-news.de oder life PR. Der Titel des Films: “U.F.O”. Geplante Drehzeit ist im Mai 2010.