|
|
|
Die Geschwindigkeit des Emulators kann über den Dialog Options/Emulator Speed eingestellt werden.
Referenz Taktrate - PAL vs. NTSC:
PAL und NTSC sind zwei bedeutende Standards zur Übertragung von Fernsehsignalen. Während PAL in fast allen westeuropäischen Staaten (mit Ausnahme von Frankreich) in Verwendung ist, ist NTSC der übliche Standard in Nordamerika. Ein PAL Signal besteht aus 625 Rasterzeilen (inklusive dem vertikalen Strahlrücklauf - Es bleibt eine nutzbare Auflösung von 768x576 Pixeln) die mit einer nominellen Bildwiederholrate von 50 Hz dargestellt werden. NTSC hingegen verwendet nur 525 Rasterzeilen bei 60 Hz. Beide Systeme verwenden allerdings Interleaving, d.h. bei jeder Bildwiederholung wird nur jede zweiter Rasterzeile neu gezeichnet, so daß das gesamte Bild nur mit einer Frequenz von 25 Hz (PAL) bzw. 30 Hz (NTSC) aufgefrischt wird.
Wenn ein Commodore 64 an ein Fernsehgerät angeschlossen wird, so werden die Standards geringfügig anders interpretiert. Der zentrale Bildbereich des C64 ist 320x200 Pixel groß. Darum herum erstreckt sich ein Rahmen der das Bild (je nach angeschlossenem TV) auf etwa 384x288 (PAL) Pixel streckt. Um daraus ein vollständiges Fernsehsignal zu erzeugen, werden alle Pixel mit der Hälfte der üblichen TV-Pixelrate dargestellt, mit dem Effekt, daß alle Pixel doppelt so breit sind. Da außerdem beide TV-Halbbilder vom C64 mit dem gleichen Signal versorgt werden, sind die Pixel auch doppelt so hoch (und somit wieder einigermaßen quadratisch).
Von der Pixelfrequenz der Videologik hängt auch die Geschwindigkeit der CPU ab.
Sie beträgt bei PAL 0.985 MHz (=625*63*50/2 Hz) und bei NTSC 1.023 MHz (=525*65*60/2 Hz). Die meisten Programme funktionieren problemlos sowohl im PAL als auch im NTSC Modus. PAL erzeugt weniger Last auf der Macintosh CPU und sollte daher bevorzugt werden. Nur Spiele, die unter PAL nicht laufen sollten unter NTSC betrieben werden.
System Takt:
In Abhängigkeit von dem gewählten Videomodus beträgt der Systemtakt des emulierten C64 entweder 0.985 MHz (PAL) oder 1.023 MHz (NTSC). Mit diesem Takt werden die CPU und die CIAs (Timer) (aber nicht der VIC und der SID) angesteuert. Wenn Sie den Systemtakt erhöhen wird der C64 schneller wobei das Geschwindigkeitsverhältnis zwischen CPU und CIAs gleich bleibt. Anmerkung: Die Kompatibilität der Emulation sinkt deutlich ab, wenn ein anderer Wert als 100% gewählt wird.
CPU Takt:
Zusätzlich zur Anpassung des Systemtaktes besteht die Möglichkeit die Geschwindigkeit der CPU allein zu beeinflussen. Wenn Sie ein CPU lastiges Programm haben, daß so schnell wie möglich abgearbeitet werden soll, dann sollten Sie diesen Parameter erhöhen. Auch hier gilt, daß die Kompatibilität sehr deutlich absinkt, wenn ein anderer Wert als 100% gewählt wird.
Grafik berechnen & Grafik darstellen:
Power64 verwaltet den Bildschirm in zwei Schritten. Zuerst wird ein Abbild des C64-Bildschirms in einem internen Puffer erzeugt (und nebenbei auf Spritekollisionen geprüft). Dieses Abbild wird nun mit dem vorherigen Bild verglichen und nur die Unterschiede werden in einem zweiten Schritt auf dem Mac Bildschirm ausgegeben.
Die Bildberechnungsrate gibt an, wie oft der erste Schritt durchgeführt wird. Die Bildwiederholrate steuert die Häufigkeit des zweiten Schrittes. Die Einstellung 'Jedes Bild' bedeutet, daß der Bildschirm 50 (PAL) oder 60 (NTSC) mal pro Sekunde neu berechnet bzw. gezeichnet wird. 'Jedes n.-te Bild' bedeutet, daß Power64 sich nur jedes n-te mal dem Aufwand der Videoemulation unterzieht. In der Einstellung Automatik versucht Power64 selbst eine Rate zu finden die der Geschwindigkeit des verwendeten Mac und der Komplexität des eingesetzten C64 Spieles am besten gerecht wird. Daher ist Automatik auch die empfohlene Einstellung sowohl für die Bildberechungs- als auch die Bildwiederholrate. Nur bei Spielen, die eine sehr genaue Auswertung der Spritekollisionen benötigen ist es sinnvoll wirklich jedes Bild berechnen zu lassen. Wer will kann sich die tatsächlich angezeigten Bildwiederholraten auch über Optionen/ CPU-Last Anzeige (siehe unten) anzeigen lassen.
Zeitliche Genauigkeit:
Power64 unterstützt vier Möglichkeiten der Videoemulation, die sich im genauen Timing der Bildberechnung unterscheiden. Im schnellen Scanline Modus wird die gesamte Scanline auf einmal zu Beginn der Scanline gezeichnet. Im Gegensatz dazu wird beim Advanced Timing nur die Spriteinformation zu Beginn der Scanline ausgelesen und der Rest des Scanline etwa in der Mitte gezeichnet. Der High Precision Mode beachtet darüber hinaus auch alle Veränderungen der Video Register in der Mitte der Scanline. Er ist daher der genaueste dieser Videomodi und der einzige der Feature wie offene linke/rechte Rahmen, oder den Wechsel der Hintergrundfarbe mitten in der Scanline darstellen kann. Der CPU Cycle Exakt Modus funktioniert in Bezug auf den VIC wie der High Precision Mode, führt aber eine genauere Analyse des Timings in Bezug auf die CPU durch. Insbesondere stiehlt er der CPU nun die richtigen Zyklen (und nicht nur die (fast immer) korrekte Anzahl von Zyklen). Dies ist für sehr spezielle Tricks (etwa den Electronic Arts Fastloader) notwendig. Unglücklicher Weise erhöht diese Präzision die Last der Mac CPU.
Sofern Sie einen hinreichend schnellen Macintosh haben, sollten Sie den CPU Cycle Exact Modus verwenden; ansonsten den High Precision oder den Advanced Modus.
Inaktive Fenster:
Normalerweise unterbricht Power64 die Emulation des C64 sobald das Emulatorfenster nicht mehr das aktive Macintoshfenster ist. Dadurch erhält die andere Applikation die volle Rechenleistung der Mac-CPU. Allerdings ist es auch möglich die Emulation im Hintergrund mit oder ohne Musik weiterlaufen zu lassen. So kann man zum Beispiel ein 'Little Computer People' im Hintergrund laufen lassen, während man dem Tagewerk nachgeht, oder sich von einem Demo mit Musik erfreuen lassen. Achtung: Diese Möglichkeiten belasten die Mac-CPU spürbar, und können andere Applikationen (insbesondere auf alten PowerMacs) merklich bremsen.
Takt Anzeige:
Die aktuelle Geschwindigkeit des Emulators läßt sich im oberen, rechten Eck des Emulatorfensters anzeigen. Power64 kann dort die Geschwindigkeit der virtuellen M6510 CPU des emulierten C64 (in MHz) anzeigen. Dieser Wert sollte für PAL bei 0.98 und für NTSC bei 1.02 liegen. Weiters kann Power64 anzeigen wie sehr die Mac CPU durch die Emulation belastet ist (in %). Um eine flüssige Grafik und Musikwiedergabe zu erreichen sollte die Mac-CPU nicht über 90% ausgelastet sein. In der zweiten Zeile gibt Power64 an wie oft der Bildschirm pro Sekunde neu gezeichnet und berechnet wird bzw. wie oft dies bei einem echten C64 geschehen würde.
Mit der Takt Anzeige Option läßt sich einstellen welche Daten Power64 darstellen soll. Um die Anzeige ganz abzustellen, können Sie Optionen/CPU-Last Anzeige (Cmd-?) verwenden. Wenn Sie Opt-Cmd-? verwenden bezieht sich die Veränderung auf alle Emulatorfenster.
Nachdem Sie die gewünschten Änderungen vorgenommen haben können Sie Global wählen damit die Optionen auf alle zur Zeit aktiven und in Zukunft erstellten Fenster wirken oder Ok anklicken um nur die Eigenschaften des aktuelle Emulatorfenster zu beeinflussen.
Turbo Boost (Cmd-B):
Um den C64 während langer LOAD Operationen mit vollständiger Floppy Emulationen, oder während ein Schach Programm über den nächsten Zug nachdenkt zu beschleunigen gibt es den Turbo Boost Modus. Turbo Boost schaltet die Geschwindigkeitskontrolle von Power64 ab, so daß der C64 nun so schnell läuft, wie die Mac CPU ihn emulieren kann. Um noch etwas schneller zu werden, deaktiviert der Turbo Boost Modus die Tonausgabe (die ansonsten auch im Mickey Mouse Stil quäken würde), und stellt nur jedes 12. Bild der Grafik dar. Sofern die Berechnungsrate der Grafik nicht aus Kompatibilitätsgründen auf 1:1 gesetzt war wird auch hier nur jedes 12. Bild verwendet. Der System Takt und der CPU Takt werden NICHT verändert, auch wenn dadurch weitere Beschleunigungen möglich wären. Nur die Macintosh Seite der Emulation wird beeinflußt, nicht die C64 Seite. Daher verschlechtert ein aktivierter Turbo Boost nicht die Kompatibilität.
Viele Aspekte der Darstellung eines C64 auf dem Macintosh Bildschirm können über Optionen/Grafik Einstellungen festgelegt werden.
Beschleunigte Darstellung:
Power64 gibt den Bildschirminhalt des C64 in zwei Schritten wieder. Zunächst erstellt es ein Abbild des Bildschirminhalts in einem internen Puffer. Dieser Puffer wird nun mit dem unmittelbar davor berechneten Bild verglichen und nur die Änderungen werden auf den Macintosh Bildschirm kopiert. Eine Möglichkeit für diesen zweiten Schritt besteht in der Verwendung der Original Macintosh Quickdraw Routinen, die zwar optimale Kompatibilität bieten und auch mit der exotischsten Videohardware zusammen arbeiten werden, die aber sehr langsam sind und nur verwendet werden sollten, wenn sonst nichts funktioniert. Im allgemeinen ist es günstiger die optimierten Routinen von Power64 zur Beschleunigten Ausgabe zu verwenden, die ebenfalls sehr kompatibel sind gleichzeitig aber wesentlich schneller arbeiten. Wenn Ihr Mac mit einer OpenGL kompatiblen Grafikkarte ausgestattet ist, kann der Bildschirm des C64 auch per OpenGL ausgegeben werden. Durch OpenGL wird es möglich die Bildschirmgröße frei zu wählen (nicht nur ganzzahlige Vielfache der Originalgröße). Bei aktivierter Kantenglättung liefert OpenGL ausserdem wunderschöne Bilder und ist daher sehr zu empfehlen.
Kantenglättung:
Wenn der C64 Bildschirm vergrößert dargestellt wird, wird die Pixelstruktur auf dem Macintosh Bildschirm sehr deutlich. Power64 kann nun versuchen das Bild etwas zu glätten. Im einfachsten Fall wird nach jeder Pixelzeile eine schwarze Zeile eingefügt und so der Übergang zwischen verschiedenfarbigen Pixeln versteckt. Bei der einfachen Glättung werden Eckpixel gerundet. Dabei werden nur die Originalfarben des C64 verwendet, so daß eine gewisse Resteckigkeit verbleibt. Echtes Antialiasing verwendet für Eckpixel Mischfarben und erzielt so sehr gute Kantenglättung.
Vollbildmodus für vergrößerte Fenster:
Power64 kann das C64 Fenster auf dem Bildschirm zentrieren und einen bildschirmfüllenden schwarzen Rahmen rundherum zeichnen, sobald auf doppelte Größe geschaltet wird. So werden alle anderen Applikationen und Macintosh typischen Merkmale versteckt. Natürlich entspricht das nicht den Regeln zur Benutzerschnittstelle des Macintosh, aber es verstärkt das C64-Gefühl. Um auch die Menüleiste zu verstecken, lesen Sie bitte den nächsten Punkt.
Menüleiste im Vollbildmodus verstecken:
Um das C64-Gefühl weiter zu verstärken, kann auch noch die Menüleiste versteckt werden, wenn ein schwarzer Rahmen gezeichnet wurde. Dadurch verschwindet auch der letzte Hinweis, darauf, daß man nicht vor einem echten C64 sitzt. Wenn diese Option gewählt ist, wird, nachdem der C64 2 Sekunden im Vollbildmodus gelaufen ist, die Menüleiste versteckt. Eine Bewegung der Maus, oder ein Druck auf die Optionstaste bringt die Menüleiste wieder auf den Schirm.
Rahmengröße:
Auf einem echten C64 ist der zentrale Bereich des Bildschirms von einem breiten Rahmen umgeben der die 320x200 Pixel Bildschirmauflösung and die 504x312 (PAL) oder 510x262 (NTSC) Fernsehauflösung anpaßt. Normalerweise ist dieser Rahmen mit einer einzigen Farbe gefüllt (und trägt damit nur wenig Information), doch haben pfiffige Programmierer neuerer Spiele Wege gefunden auch diesen Bereich mit Sprites (etwa zur Anzeige des Spielstandes oder für Laufschriften) zu füllen. Über Frame Width können Sie bestimmen, wie breit der von Power64 angezeigte Rahmen sein soll. Die verfügbaren Werte sind 0 bis 32 Pixel für den linken und rechten Rand, sowie 0 bis 48 Pixel für den oberen und unteren Rand.
Wenn im NTSC Modus eine Rahmenbreite von 32 oder mehr Pixel gewählt wird, so wird diese automatisch auf 31 Pixel reduziert, so daß 262 (=31+200+31) Rasterzeilen dargestellt werden.
Farbdarstellung auf Farbbildschirmen:
Power64 kann den C64 Bildschirm wahlweise in der Originalfarben oder in Schwarz/Weiß darstellen. Wählen Sie diese Option um die Originalfarben auf Macintosh Farbbildschirmen zu sehen. Es gibt kaum einen Grund diese Option nicht zu wählen.
C64 Palette:
Basierend auf zahlreichen Beobachtungen verschiedener C64 an verschiedenen Fernsehapparaten und Monitoren, gibt sehr viele verschiedene Meinungen darüber, wie die korrekte Farbpalette des C64 aussieht, und wie sie am besten auf die Palette des Macintosh abgebildet wird. Power64 bietet daher einige Paletten (Color Lookup Tables (CLUT)), die von verschiedenen Leuten in dem Versuch einer optimalen Umsetzung der C64 Farben auf den Macintosh erstellt wurden. Wählen Sie jene Palette, die Ihren Erinnerungen an die korrekten C64 Farben am besten entspricht.
Wenn Sie Lust haben, können Sie auch selbst eine Palette erstellen. Wählen Sie dazu zunächst jene Standard-Palette aus, die Ihnen am besten gefällt. Wenn Sie nun als Farbpalette den Paletten Editor wählen können Sie, ausgehend von der zuletzt gewählten Palette, eine händische Feinabstimmung der verwendeten Farben durchführen.
Seitenverhältnisse konstant halten:
OpenGL macht es möglich ein Breite und Höhe eines Emulatorfenster beliebig zu verändern. So ist es z.B. möglich ein Fenster extrem hoch und gleichzeitig schmal zu machen und so ein eigenartig verzerrtes Bild zu erzeigen. Im allgemeinen wird es aber bessern sein, wenn das Verhältnis von Breite zu Höhe des Emulatorfensters stets dem Origial entspricht.
Zoom kleiner (Cmd -):
Reduziert den Zoom Faktor des aktuellen C64 Fensters um eins. Wenn gleichzeitig die Options-Taste gedrückt wird, gilt die neue Größe für alle Fenster.
Zoom größer (Cmd-+):
Erhöht den Zoom Faktor des aktuellen C64 Fensters um eins. Wenn gleichzeitig die Options-Taste gedrückt wird, gilt die neue Größe für alle Fenster.
Vollbildmodus (Cmd-I):
Power64 ist eine brave Macintosh Applikation, die in einem normalen Fenster läuft. Außerhalb dieses Fensters sind der Finder und die Fenster der anderen Applikationen sichtbar. Um ein stärkeres C64-Gefühl zu erzeugen, bietet Power64 die Möglichkeit ein großes, schwarzes Fenster über den gesamten Bildschirm zu zeichnen, das alle anderen Applikationen verdeckt. Wenn Sie außerdem die Menüleiste verstecken wollen, so lesen Sie bitte oben "Menüleiste im Vollbildmodus verstecken".
Über Sample Rate und Größe läßt sich die Tonqualität für die laufende Musik steuern. Eine hohe Sample Rate bietet genauere Sound Emulation, erzeugt aber auch mehr Last auf der Macintosh CPU. Bis MacOS X 10.2 ist es am günstigsten, wenn die in Power64 gewählte Sound Sample Rate der Sample Rate im 'Monitore & Ton' Kontrollfeld entspricht. Alle darüber hinaus erzeugten Samples werden vom Sound Manager verworfen, fehlende Samples werden interpoliert (unter weiterer Belastung der CPU). Ab MacOS X 10.3 lässt sich die Sample Rate im Kontrollfeld 'Ton' nicht mehr einstellen, und Power64 sollte auf eine Tonausgabe mit 44100 Hz konfiguiert werden.
Weiters sollte sichergestellt werden, dass die Sample Rate für MIDI auf 44100Hz konfiguiert ist. Verwenden Sie dazu das Programm Audio-MIDI-Konfiguration ( unter /Programme/Dienstprogramme). Dieser Wert wird insbesondere durch externe Audio-Interfaces (z.B. ein USB-Audio-I/O Gerät wie das Griffin iMac) bzw. deren Treiber gerne verstellt. Achtung: Auch wenn das Gerät bereits abgezogen wurde verbleibt der Treiber im Betriebssystem (und wartet auf die Rückkehr 'seines' Gerätes!). Es sollte sichergestellt werden, dass die Samplerate für MIDI sowohl bei eingesteckter als auch bei abgezogener Hardware korrekt eingestellt ist. Zu hohe MIDI-Sampleraten können dazu führen, dass Power64 viel zu schnell läuft und/oder stumm bleibt. Dies ist kein Spezifikum von Power64 - auch andere Programme (Quicktime) sind von einer solchen Fehlkonfiguration betroffen (siehe auch http://docs.info.apple.com/article.html?artnum=300832.
Power64 erzeugt Samples immer mit 16 bit. Die 8 bit Option verwirft einfach die untersten 8 bit der 16 bit. Dadurch wird weder Rechenzeit noch Speicherplatz gespart, vielmehr ist diese Option dazu gedacht, die Qualität einer 8 bit Aufzeichnung im voraus bewerten zu können.
Die Tonwiedergabe durch Power64 findet mit maximal 44100 Hz statt. Wenn Sie eine höhere Samplerate wählen, berechnet Power64 diese zwar, kann Sie aber durch die Beschränkungen des Macintosh Sound Managers nicht unmittelbar ausgeben. Statt dessen wird aus den mit Oversampling ermittelten Werten ein Mittelwert gebildet und dieser ausgegeben.
Lautstärke:
Wählt die Lautstärke im Bereich von 0% bis 120% des Maximalwertes. Bitte beachten Sie, daß eine Lautstärke von mehr als 100% unter bestimmten Umständen (alle 3 Stimmen und der Sample Playback erreichen gleichzeitig maximale Amplitude) dazu führen kann, daß Samples gekappt werden. Glücklicherweise kommt das während bei realer Musik praktisch nicht vor, und es ist problemlos möglich die Lautstärke auch etwas über 100% zu wählen.
Wenn eine Lautstärke von 0% gewählt wurde, ist zwar kein Ton zu hören, aber der SID wird weiterhin vollständig emuliert. Aufzeichnungen sind weiterhin möglich und auch die Werte von SID[$1B] und SID[$1C] sind korrekt. Um die SID Emulation vollständig abzustellen (und somit die Mac CPU Last zu verringern) nutzen Sie die Stummschaltung (Cmd-M) (siehe unten).
Stimme stummschalten:
Der SID verfügt über 3 Stimmen, die gemeinsam die Musikwiedergabe gestalten. Um den Melodieverlauf in jeder einzelnen Stimme genauer betrachten (oder aufzeichnen) zu können besteht die Möglichkeit in Power64 gezielt einzelne Stimmen stummzuschalten.
Filter aktivieren:
Die Ausgabe der 3 SID-Stimmen wird durch einen (gemeinsamen) Filter beeinflußt. Power64 kann diesen Filter emulieren oder das ungefilterte Tonsignal zu den Lautsprechern schicken. Letzter Option ist geringfügig schneller, aber natürlich nicht ganz so originalgetreu wie die korrekt Filteremulation.
Tonaufzeichnung:
Power64 bietet die Möglichkeit die Musik von C64 Spielen als AIFF Datei aufzuzeichnen, die dann z.B. mit dem Simple Player von Quicktime wieder abgespielt werden kann.
Weiters bietet Power64 die Möglichkeit Musik als reSID Datei aufzuzeichnen. Dieses Dateiformat spart viel Speicherplatz, da keine Samples aufgezeichnet werden, sondern die Schreibzugriffe auf den SID Sound Chip erfasst werden. Zur Wiedergabe der Aufzeichnungen können Sie Power64 (Unter Ablage/C64/SID Music Player) verwenden. Um die Dateigröße weiter zu reduzieren kann die erzeugte Datei mit GZIP komprimiert werden. Das ist dringend empfohlen, sofern Sie die Daten nicht von Hand oder über ein anderes Programm auswerten wollen. Power64 unterstützt auch noch das Frodo Audio File Format, das weniger flexibel ist als das reSID Format und außerdem deutlich größere Dateien erzeugt. Dies geschieht nur noch aus Gründen der Kompatibilität, und da auch Frodo bald auf das neue Dateiformat umsteigen wird, sollte das alte Frodo Dateiformat nicht mehr genutzt werden.
Sample Rate und Größe bestimmen die Qualität der Aufzeichnung. Diese Parameter sind nur für die Tonaufzeichnung im AIFF Format von Bedeutung und können daher nicht verändert werden, wenn die Tonaufzeichnung im reSID oder Frodo Dateiformat erfolgt. Eine hohe Sample Rate und große Sample Größe ergeben hohe Qualität, aber leider auch große AIFF Dateien. Anmerkung: Power64 erzeugt seine Töne mit der gewählten Sample Rate (siehe oben), 16 bit, Mono und erzeugt die anderen Möglichkeiten indem es ggf. Teile der Sample verwirft oder verdoppelt. Es ist ungeschickt eine höhere Recording Sample Rate als Sound Sample Rate zu wählen, da die zusätzlichen Samples einfach durch Verdopplung der berechneten Sampler erzeugt werden. Somit ist die Dichte der nützlichen Samples doch nur die der Sound Sample Rate, gleichzeitig entspricht der Verbrauch an Plattenplatz aber der höheren Sound Recording Rate, so daß die Nachteile beider Verfahren vereint sind.
Aufzeichnung bei Stille unterbrechen:
Power64 kann die Tonaufzeichnung automatisch unterbrechen, wenn die C64 Software keine Musik abspielt. Dadurch wird vermieden das vor und nach der Musik lange Bereiche Stille die AIFF Datei unnötig aufblähen. Ausserdem werden alle Pausen, die länger als 1/2 Sekunde dauern auf 1/2 Sekunde verkürzt. Mit dieser Option kann man bequem schon vor dem Beginn der C64 Programms die Aufzeichnung starten, und muß nicht mit blitzschnellem Finger nach dem Start der Musik Cmd-* drücken.
Nur bei Spielen die allzu lange Pausen zwischen den einzelnen Tönen haben, die aber trotzdem noch (mit dem Ohr) als zusammenhängend wahrgenommen werden kann es sinnvoll sein, diese Option auszuschalten.
AIFF Sound Ordner:
Die Musik wird in einer Datei mit dem Name 'C64 Sound - tt.mm.jjjj (x)' im Sound Ordner abgespeichert. Über den Button Sound Ordner wählen läßt sich auswählen in welchem Ordner die Musikdateien angelegt werden sollen. Bitte beachten Sie, daß die Musikdateien schnell sehr groß werden können und achten Sie darauf, daß genug freier Platz auf dem Ziellaufwerk zur Verfügung steht. Eine Aufzeichnung mit 22050 Hz und 16 bit benötigt 43 KByte/s bzw. 2.5 MByte/min. Bedenken Sie weiters, daß die Aufzeichnung in Echtzeit erfolgt. Daher muß das Zielmedium hinreichend schnell sein, also etwa eine Festplatte oder evt. ein ZIP Laufwerk. Eine 3.5" Diskette ist NICHT schnell genug und der Versuch dort Musik abzuspeichern wird zu unvollständigen Musikdateien führen.
Über Optionen/Stummschaltung (Shift-Cmd-M) läßt sich die Sound Emulation an/aus schalten. Da die Emulation des SID einen signifikanten Teil der CPU Zeit verbraucht, lassen sich so Spiele beschleunigen, die ansonsten nicht mit voller Geschwindigkeit laufen würden. Auch bei abgeschaltete Musik, läßt sich SID[$1B] immer noch als Zufallszahlengenerator nutzen.
Optionen/Töne lauter (Cmd->) und Optionen/Töne leiser (Cmd-<)
Erhöhen und Vermindern die Lautstärke der Musik. Wenn die Lautstärke bereits auf 0% war und dann noch einmal vermindert wird, wird die Musik stummgeschaltet. Wenn die Lautstärke dann wieder erhöht wird, wird die Stummschaltung wieder aufgehoben.
Wenn die Options-Taste während der Auswahl eines neuen Modus für die Sound Emulation gedrückt wird, so gilt der neue Modus für alle Fenster in Power64.
Tonaufzeichnung (Cmd-*):
Über Cmd-* wird die Musikaufzeichnung an oder abgeschaltet. Es gibt auch die Möglichkeit diese Funktion über Optionen/Tonaufzeichnung anzusprechen, doch ist es wesentlich schwieriger diesen Menüpunkt zum richtigen Zeitpunkt anzuklicken.
Die Musik wird in einer Datei mit dem Name 'C64 Sound - tt.mm.jjjj (x)' (wobei tt.mm.jjjj das aktuelle Datum und x ein Zähler ist) im Sound Folder (siehe oben) abgespeichert.
Power64 unterstützt zwei Tastaturmodi - einen Macintosh Tastatur Modus und einen C64 Tastatur Modus. Zwischen diesen Modi kann über die Menüeinträge Optionen/Macintosh Tastatur und Optionen/C64 Tastatur umgeschaltet werden. Wenn bei der Auswahl die Optionstaste gedrückt wird, so gilt der neue Modus nicht nur im aktuellen Emulatorfenster, sondern für alle Emulatoren.
Im Macintosh Modus ist der Zusammenhang zwischen den (physikalisch) gedrückten Macintosh Tasten und den (logisch) gedrückten C64 Tasten durch den Buchstaben bestimmt, der normalerweise mit der Macintosh Taste verbunden ist (und im allgemeinen auf der Tastenkappe aufgedruckt ist). Somit erzeugt jene Taste (oder Tastenkombination) die in jedem Macintosh Text Editor ein '*' erzeugt auch in Power64 ein '*'. Das ist sehr nützlich, wenn man den C64 schon eine Weile nicht mehr genutzt hat und das Tastaturlayout nicht mehr auswendig beherrscht. Andererseits verlangen einige Tasten, die beim C64 nur einen einzigen Tastendruck erfordern, dann nach einer Kombination mit Shift und/oder Control oder sind überhaupt nicht mehr verfügbar. Somit können sich Probleme mit Programmen ergeben die diese Tasten benötigen.
Als Alternative existiert der C64 Tastatur Modus. Hier verhält sich die Macintosh Tastatur ganz wie eine C64 Tastatur. Die Tastaturbelegung basiert auf der relativen (physikalischen) Position der Tasten auf der Tastatur. Der Buchstaben, der normalerweise mit einer Macintosh Taste verbunden ist (und der üblicherweise auch auf der Tastenkappe aufgedruckt ist) spielt keine Rolle. Das bietet den Vorteil, daß alle C64 Tasten im Emulator verfügbar sind, kann aber auch leicht Tippfehler verursachen, wenn man das C64 Tastatur Layout nicht (mehr) gewohnt ist.
Im Macintosh Tastatur Modus ist es daher einfach größere Mengen Text zu tippen, ohne lange darüber nachzudenken, ob man ein Macintosh- oder ein C64-Fenster vor sich hat (oder nachher Tippfehler auszubessern) - die Tastatur ist immer gleich.
Der C64 Modus bietet dagegen eine genauere Emulation der Originaltastatur. Er macht es möglich alle Grafikzeichen des C64 zu erreichen. Außerdem verwenden Spiele, die über die Tastatur zu steuern sind Tastenkombinationen, die auf einer C64 Tastatur bequem zu erreichen sind. Auf einer Macintosh Tastatur können die Zeichen, an die nationalen Gegebenheiten angepaßt, vertauscht und somit unerreichbar sein.
Anmerkung: Wenn Sie an ihrem Macintosh eine US-Tastatur verwenden, so gibt es nur sehr geringe Unterschiede zwischen den beiden Tastaturmodi. In diesem Fall ist vermutlich der C64-Modus geschickter, da er eine genauere Emulation bietet.
Die Tastatur des C64 bietet einige Spezialtasten, die wie folgt auf die Macintosh Tastatur abgebildet wurden:
C64 | Macintosh | ||
---|---|---|---|
Run/Stop | Escape | ||
Restore | Cmd-R (inklusive Run/Stop) (oder Menü: File/Restore) | ||
Reset | Cmd-K (Option-Cmd-K für harten Reset) (oder Menü: File/Reset) | ||
Commodore | Option | ||
Control | Control | ||
Shift Links | Shift (Links & Rechts) | ||
Shift Rechts | End oder F12 | ||
Shift Lock | Caps Lock | ||
Insert/Delete | Insert/Help | ||
Backspace | Backspace oder Delete | ||
Clear/Home | Home oder F9 | ||
F1 | F1 oder Cmd-1 | ||
F2 (=Shift-F1) | F2 oder Cmd-2 oder Shift-F1 | ||
F3-F8 | analog zu F1/F2 | ||
Cursor Rechts | Cursor Rechts | ||
Shift Cursor Rechts | Cursor Links oder Shift Cursor Rechts | ||
Cursor Runter | Cursor Runter | ||
Shift Cursor Runter | Cursor Rauf oder Shift Cursor Runter | ||
Linkspfeil | Underscore('_') (Feuer in 'Castle Wolfenstein') | ||
Aufwärtspfeil | Circumflex('^') oder F10 oder Page-Up | ||
Pfundzeichen ('£') | Page-Down oder F11 oder '£' (Mac Tastatur: Shift-Opt-4) | ||
Pi ('π') | Shift-Page-Up oder 'π' (Mac Tastatur: Opt-p) |
Die nummerische Tastatur auf dem Macintosh kann in Power64 genauso wie normalen Zifferntasten in der obersten Reihe der Tastatur genutzt werden.
Verwenden Sie den Menübefehl Ablage/Tastaturbelegung um ein Fenster mit dem aktuellen Tastaturlayout des C64 (unter Berücksichtigung der gedrückten Sondertasten) zu öffnen.
Um die Erinnerung an das Layout der C64 Tastatur in Erinnerung zu rufen, und das Aufspüren der verschiedenen Grafikzeichen zu erleichtern hier nun einige Bilder der C64 Tastatur.
Ohne Umschalttasten ist das Layout der C64 Tastatur sehr ähnlich dem einer Standard US-Macintosh Tastatur.
Abkürzungen: C/H…Clear/Home - I/D…Insert/Delete
RST…Restore - R/S…Run/Stop - LCK…Shift Lock
Wenn Shift gedrückt (oder Shift Lock aktiv) ist können die folgenden Zeichen erreicht werden:
Über die Commodore Taste (Macintosh: Option) können folgende Zeichen eingetippt werden:
Weitere Text Farben können über CTRL-1…CTRL-8 gewählt werden. CTRL-9 und CTRL-0 schalten die inverse Darstellung an und aus.
Power64 bietet direkte Unterstützung für USB-Joysticks, es ist aber auch möglich über die Macintosh Tastatur Joysticks in beiden Ports des C64 zu simulieren.
Unter Optionen/Joystick Einstellungen… besteht die Möglichkeit die Joysticksimulation von Power64 den eigenen Wünschen anzupassen. So kann jeder Richtung und dem Feuerknopf eine Taste der Macintosh Tastatur zugewiesen werden. Dabei ist es vollkommen in Ordnung für beide Joysticks die gleichen Tasten zu verwenden; ein Tastendruck wirkt dann eben auf beide Joysticks.
Wahlweise können 4 oder 8 Richtungstasten pro Joystick definiert werden. Auch wenn nur 4 Tasten eingesetzt werden, sind trotzdem durch das gleichzeitige Drücken von 2 Tasten diagonale Bewegungen möglich. Wenn Sie allerdings versuchen diagonal zu schießen (also insgesamt 3 Tasten gleichzeitig gedrückt werden) kann es zu Problemen kommen, da die Macintosh Tastatur einige Kombinationen von 3 (oder mehr) gleichzeitig gedrückten Tasten nicht richtig erkennen kann.
Power64 bietet die Funktion, die Achsen und Tasten und Achsen des USB-Joysticks auf Bewegungen des C64 Joysticks abbildet. Oft findet Power64 eine geschickte Konfiguration, ansonsten kann man unter "USB Joystick Konfigurieren" nachhelfen.
Anmerkung: Manchmal steigt die CPU Belastung spontan extrem an, wenn intensiv am Joystick gerüttelt wird und bleibt auch dann noch hoch, wenn der Joystick danach wieder in Ruhe gelassen wird. Die Ursache dafür ist noch nicht vollständig erforscht, dürfte aber Apple's HID-Manager anzulasten sein.
Anmerkung: Fast alle USB Joysticks sind kompatibel zum HID-Treiber des MacOS und können somit auch von Power64 genutzt werden. Einige Spezial'joysticks' sind aber leider inkompatibel. Insbesondere betrifft dies den von Conrad Electronics vertriebene Gameport-Joystick ⇒ USB Konverter (der sich ansonsten für Bastelarbeiten mit original C64 Joysticks anbieten würde).
Wenn Sie über zwei USB Joysticks verfügen, ist es möglich in den Joystick Einstellungen jedem Joystick einen Joystick Port des C64 zuzuweisen und so mit beiden Joysticks gleichzeitig zu spielen. Setzen Sie dazu den USB Joystick Eintrag für Port 1 auf 'A' und für Port 2 auf 'B' (oder vice versa, aber nicht beide auf den gleichen Wert). Klicken Sie nun 'USB Joysticks Einstellungen' und wählen Sie Ihren ersten Joystick aus der Liste der verfügbaren Geräte in der linken, oberen Ecke des Dialogs. Wählen Sie für den eigentlichen Joystick die Funktion 'Joystick A Bewegung' und für die Tasten 'Joystick A Feuer' (Alle Icons sind grün). Wählen Sie nun den zweiten Joystick und stellen sie Funktionen auf 'Joystick B Bewegung' bzw. 'Joystick B Feuer' (rote Icons). Nun können Sie beide Joystick verwenden.
Auch wenn original C64-Joystick nur einen Feuerknopf haben, simuliert Power64 darüber hinaus einen zusätzlichen Feuerknopf der mit Auto-Feuer versehen ist. Intern wirken beide Knöpfe (Feuer und Auto-Feuer) auf die gleiche (virtuelle) Leitung des C64, doch lassen sich durch die beiden Leitungen sich Einzelimpulse und periodische Signale auslösen.
Ohne Spezialhardware ist es nicht möglich einen original C64-Joystick an einen Mac anzuschließen, da die Stecker des C64 Joysticks (9-polig, rein passive Kontakte) und des Mac (USB Bus mit 'intelligentem' Protokoll) zu unterschiedlich sind.
Erfreulicher Weise gab es von der Firma Speed Link (www.speed-link.com) einen Nachbau des klassischen Competition Pro Joysticks (mit originalgetreuen, hochwertigen Mikroschaltern) mit USB Port zu bequemen Anschluss an moderne Macs (Auf der Webseite unter Produkte:PC Equipment:Joysticks - Produktnummer SL-6602 (schwarz/rot) oder SL-6602-TBE (transparent blau/silber)). Leider hat Speed Link die Produktion des Competition Pro mittlerweile eingestellt und nimmt keine Bestellungen mehr an, aber verschiedene Händler haben noch Vorräte und es sollte möglich sein gebrauchte Exemplare über ebay zu beschaffen.
Wer nicht gleich einen ganze Joystick kaufen will, oder einfach nur seinen Originaljoystick nutzen möchte, der kann unter mehreren Interfaces wählen, die die Protokollumsetzung von C64 Standard nach USB durchführen:
Sollten sie einen neuen USB Joystick suchen, der den guten alten C64 Qualität entspricht (digitale Bewegungen, Microschalter für Haltbarkeit und knackiges Spielgefühl, statt moderne Analogjoysticks die mit Buttons etc. überladen sind) versuchen Sie es doch unter: http://www.x-arcade.com oder http://www.slikstik.com.
Im C64 werden die I/O-Pins des CIA 1 sowohl für die Tastatur- als auch für Joystickabfrage genutzt. Dieses Hardware Design führt dazu, daß bestimmte Joystickbewegungen dazu führen, daß der C64 (fälschlicherweise) Tastaturaktivität 'erkennt'. Daher ist es manchmal nützlich den Joystick abzuschalten.
Die meisten Tasten der Macintosh Tastatur haben eine Entsprechung auf der C64 Tastatur. Allerdings ist es nicht wünschenswert, daß jede Bewegung des virtuellen Joysticks (also das Drücken einer Macintosh Taste) auch einem Tastendruck auf dem C64 entspricht. Daher ist es im allgemeinen geschickt die Joysticktasten vor dem emulierten C64 zu verstecken. Dabei sollte man allerdings darauf achten, daß keine 'wichtigen' Tasten verloren gehen. Es hat sich als geschickt erwiesen für den Joystick die Tasten des Ziffernblocks zu verwenden, und diese vor dem C64 zu verstecken.
Dieses Verstecken von Tasten ist besonders gefährlich, wenn man Umschalttasten (Shift, Option, Control) zur Joysticksteuerung eingesetzt werden. Power64 unterstützt auch diese Tasten, aber sofern Sie nicht ein PowerBook verwenden (und somit keinen Ziffernblock haben) wird von dieser Lösung dringend abgeraten.
Um auch in solchen Fällen trotzdem schnell einen Text eintippen zu können, lassen sich die Joysticks in Power64 mit einem Hauptschalter temporär abschalten. Schalten Sie dazu den Menüeintrag 'Joysticks aktivieren' im Einstellungsmenü aus (Cmd-L). Beachten Sie bitte, daß dies ein Hauptschalter ist. Wenn er aktiviert ist, werden nur jene Joysticks aktiviert, die einzeln in den Joystick Einstellungen aktiviert wurden. Diese Menüfunktion dient wirklich nur dem kurzzeitigen Ausschalten der Joysticks für kurze Zeiten, wenn sie andernfalls wichtige Tasten blockieren würden.
Einige C64 Spiele benötigen einen Joystick in Port 1, andere hingegen lassen sich nur über Port 2 steuern. Im Allgemeinen führt nur Versuch und Irrtum zur Erkenntnis was ein konkretes Spiel benötiogt. Über den Menüpunkt Optionen/Joystick vertauschen (Cmd-J) lassen sich schnell die beiden Joystick Ports austauschen. Wird gleichzeitig
die Optionstaste gedrückt, so werden die Joysticks in allen Fenstern gewechselt.
Die korrekte Konfiguration von USB Joysticks mit der oben beschriebenen Anleitung, hat viele Benutzer vor Probleme gestellt. Daher soll nun hier in einfachster 'Kochbuch'-Form vorgeführt werden, wie die korrekte Konfiguration eines einzelnen USB Joystick vorgenommen wird. Wenn Sie über zwei USB Joysticks verfügen, lesen Sie bitte das nächste Kapitel.
Nachdem Sie auf den Eintrag "Joystick Einstellungen..." im "Optionen"-Menü geklickt haben, erscheint der "Joystick Einstellungen"-Dialog. Stellen Sie die Auswahl für den USB Joystick auf '-' (kein USB Joystick) für Port #1 und auf 'A' für Port #2. Um Spiele nutzen zu können, bei denen 2 Spieler gleichzeitig aktiv sind, sollten Sie für Port #1 einen Tastaturjoystick definieren (etwa mit der Tastenkombination 4, 5, 6, 8, 0 auf der numerischen Tastatur oder über die Cursortasten + Space oder eine andere Tastenkombination die Ihnen angenehm ist). Den Tastaturjoystick für Port #2 sollten Sie auf andere Tasten legen (etwa alle Richtungen und Feuer auf F12 oder eine andere 'nutzlose' Taste). Verwenden Sie nicht die gleichen Tasten wie für Port #1, sonst gelten alle Aktivitäten des Tastaturspielers auch für den Joystickspieler.
Klicken Sie nun auf "USB Joystick Einstellungen". Der Inhalt des Dialogs, den Sie nun sehen hängt von der Art Ihres Joysticks (Anzahl der Achsen und Knöpfe) ab. Konfigurieren Sie alle Eingabeelemente so, dass sie geeignete Aktionen für Joystick A (grüne Icons) auslösen. Sie können gleichzeitig überprüfen dass Power64 ihren Joystick korrekt erkennt: Betätigen Sie die Eingabeelemente und beobachten Sie, wie die entsprechenden Icons aufleuchten.
Klicken Sie zweimal auf Ok um beide Ebenen des Dialogs zu schließen und schon sind Ihre Joystick fertig konfiguriert. Sie können das Programm Joystick Demo (siehe Kapitel 7.3 Joystick Demo) nutzen um die korrekte Funktion der Joysticks zu überprüfen. Bedenken Sie aber, dass einige Spiele ihren Joysticks in Port #1 erwarten, während andere unbedigt Port #2 verwenden wollen. Normalerweise ist Versuch-und-Irrtum die einzige Möglichkeit herauszubekommen, welchen Port ein bestimmtes Spiel will. Falls sich ein Spiel eigenartig verhält (etwa sich auf Knopfdruck in den Startzustand zurücksetzt oder in den Pause-Modus fällt) erwartet es den Joystick vermutlich im anderen Port. Drücken Sie Cmd-J um die Joystick Ports zu wechseln.
Dieser Abschnitt zeigt, wie man Power64 für die Verwendung von zwei USB Joysticks konfiguriert. Wenn Sie nur einen USB Joystick haben, lesen Sie bitte das vorige Kapitel.
Nachdem Sie auf den Eintrag "Joystick Einstellungen..." im "Optionen"-Menü geklickt haben, erscheint der "Joystick Einstellungen"-Dialog. Stellen Sie die Auswahl für den USB Joystick auf 'A' für Port #1 und auf 'B' für Port #2.
Klicken Sie nun auf "USB Joystick Einstellungen". Der Inhalt des Dialogs, den Sie nun sehen hängt von der Art Ihres Joysticks (Anzahl der Achsen und Knöpfe) ab. Nutzen Sie das Geräte-Popupmenü oben im Dialog, um ihren ersten USB Joystick auszuwählen. Konfigurieren Sie alle Eingabeelemente so, dass sie geeignete Aktionen für Joystick A (grüne Icons) auslösen. Sie können gleichzeitig überprüfen dass Power64 ihren Joystick korrekt erkennt: Betätigen Sie die Eingabeelemente und beobachten Sie, wie die entsprechenden Icons aufleuchten.
Nutzen Sie nun das Geräte-Popupmenü um Ihren zweiten USB Joystick auszuwählen. Konfigurieren Sie die Eingabeelemente dieses Joysticks auf geeignete Aktionen für Joystick B (rote Icons).
Klicken Sie zweimal auf Ok um beide Ebenen des Dialogs zu schließen und schon sind Ihre Joystick fertig konfiguriert. Sie können das Programm Joystick Demo (siehe Kapitel 7.3 Joystick Demo) nutzen um die korrekte Funktion der Joysticks zu überprüfen. Bedenken Sie aber, dass einige Spiele ihren Joysticks in Port #1 erwarten, während andere unbedigt Port #2 verwenden wollen. Normalerweise ist Versuch-und-Irrtum die einzige Möglichkeit herauszubekommen, welchen Port ein bestimmtes Spiel will. Falls sich ein Spiel eigenartig verhält (etwa sich auf Knopfdruck in den Startzustand zurücksetzt oder in den Pause-Modus fällt) erwartet es den Joystick vermutlich im anderen Port. Drücken Sie Cmd-J um die Joystick Ports zu wechseln.
Power64 kann die Bewegungen der Macintosh Maus verwenden um eine Commodore 1351 Maus zu simulieren. Die C1351 hat zwei Tasten; die linke Taste wird mit dem Klick der Macintosh Maus simuliert, für die rechte Maustaste wird Shift-Klick verwendet.
Üblicherweise wird auf dem C64 ein Sprite verwendet um den Mauszeiger darzustellen.
Welches (der 8 möglichen) Sprites das ist, hängt vom C64 Programm ab. Power64 kann versuchen automatisch herauszufinden, wann ein C64 Programm auf die Maus zugreift und welches Sprite es zur Darstellung des Mauszeigers verwendet. Power64 versucht dann den C64 Mauszeiger und den Mac Mauszeiger zur Deckung zu bringen und synchron zu bewegen. Dadurch daß die beiden Zeiger nun stets an der gleichen Stelle stehen werden unerwartete Effekte vermieden, wie sie entstehen wenn die beiden Zeiger an verschiedenen Stellen stehen und bei einem Klick das C64 Programm eine Handlung ausführt und der Mac seine eigene Interpretation dieses Ereignisses liefert.
Power64 bietet zwei Wege die aktuelle Position der Mac Maus zu interpretieren. Einerseits kann eine echte, analoge C1531 Maus emuliert werden. Das ist für den Benutzer am bequemsten, da nun diese Form der Emulation die Maus mit variabler Geschwindigkeit bewegen kann, so dass sowohl große Distanzen schnell überwunden werden, als auch feine Bewegungen exakt ausgeführt werden können. Leider erfordert die C1531 Maus Emulation Unterstützung durch das aktuelle C64 Programm, was leider nur sehr wenige Programme bieten.
Alternativ kann die Mac Maus auch genutzt werden um einen digitalen Joystick (wahlweise in Joystick Port 1 oder 2) zu simulieren, wie es von fast allen C64 Spielen unterstützt wird. Dabei kann entweder die absolute Position des Mac Mauszeigers im C64 Fenster ausgewertet werden (Mauszeiger in der oberen Fensterhälfte entspricht Joystick nach oben etc.), oder es kann versucht versucht werden ein bestimmtes C64 sprite mit der Mac Maus zu steuern, eine Funktion die vor allem für Adventures wie ZakMcKracken nützlich ist, wo man mit viele Klicks lange Befehle/Sätze zusammenstoppelt. Bedenken Sie aber, dass auch wenn Sie eine Maus in der Hand halten, Power64 einen Joystick simuliert. Da sich as C64 Sprite hier nur mit einer fixen Geschwindikeit bewegen kann, wird immer wieder ein deutlicher Abstand zwischen Mac Mauszeiger und dem hinterher hinkenden C64 Sprite entstehen. Dies ist ein grundsätzliches Problem der Cursorsteuerung per Joystick und kann von Power64 nicht behoben werden. Insgesamt muss angemerkt werden, dass diese Funktion primär für 'langsame' Adventures und Strategiespiele gedacht ist. Schnelle Actionspiele lassen sich per Maus nicht sinnvoll steuern.
Wenn Power64's Logik zur Mauszeigererkennung scheitert (etwa weil viele Sprites auf dem Bildschirm zu sehen sind, die sich alle frei bewegen), kann man (mit menschlicher Intelligenz und Mustererkennung) im Power64 Monitor recht schnell feststellen (Befehl v vic um zu sehen welche Sprites aktiv sind, dann an den Basisadressen mit dem Befehl y suchen) welches der Sprites der Mauszeiger ist. Das so gefundene Sprite wird dann im Maus Options Dialog eintragen und nun versucht Power64 den Mac Mauszeiger und das gefundene Sprite synchron zu führen.
In den seltenen Fällen in denen Power64 nicht in der Lage ist, die Mauszeiger synchron zu halten (etwa weil der C64 per Rasterinterrupt wild mit den Sprites herumschaltet) kann man sich noch damit behelfen daß man Power64 vor einem schwarzen Bildschirm betreibt. Dann hat man zwar zwei verwirrenden Mauszeiger, aber der Mac Zeiger kann (fast) nichts 'Böses' anrichten.
Normerweise stellt Power64 die Mac Maus durch ein Fadenkreuz dar (statt den normalen breiten Pfeiles) wenn die C64 Maus aktiv ist. Wenn selbst das dünne Fadenkreuz noch zu sehr ablenkt, ist des möglich die Sichtbarkeit der Mac Maus noch weiter zu reduzieren indem man Aktive C64 Maus verdrängt Mac Maus aktiviert.
Manche Programme verschieben bei einer Bewegung der Maus um ein Mickey (kleinste Bewegungseinheit einer Maus) den Mauszeiger sofort um 2 C64 Pixel. Um auch hier eine Synchronisation zwischen C64 Maus und Mac Maus erzielen zu können besteht die Möglichkeit in Power64 alle Mausbewegungen zu skalieren.
Jeder Mauszeiger hat einen 'Hot-Spot', der die Stelle angibt, die wirklich durch den Zeiger 'gemeint' ist, etwa die Spitze des Zeiger oder der Mittelpunkt eines Fadenkreuzes. Power64 kann oft automatisch feststellen, wo dieser Punkt bei dem C64 Mauszeiger liegt und dann den Hot-Spot des C64 Zeigers und jeden der Mac Maus zur Deckung bringen. Wenn der C64 Mauszeiger eine allzu ausgefallene Form hat, versagt allerdings die Logik von Power64 und es ist erforderlich die Position des Hot-Spot von Hand vorzugeben.
Wie oben erwähnt hat die C1531 Maus zwei Maustasten, während die Macintosh Maus nur eine Taste aufweist. Die meisten GUIs verwenden die linke Maustaste für die 'wichtigen' Funktionen und die rechte Taste für untergeordnete Aufgaben. Daher nutzt Power64 die Macintosh Maustaste um (einfach) Klicks mit der linke C64 Maus zu simulieren. Die rechte Taste der C64 wird mit Shift-Klick (mühsam) emuliert. Sofern die Mac Maus unter OS X über zwei (oder mehr) Tasten verfügt, wird die zweite Mac Maustaste direkt zur Simulation der zweiten C64 Maustaste verwendet. Einige C64 Programme verwenden allerdings die umgekehrte Logik und lösen die wichtigsten Funktionen mit der rechten Maustaste aus und verwenden die linke Taste nur für untergeordnete Aufgaben. Um die Handhabung solcher Programme zu vereinfachen bietet Power64 die Möglichkeit die Simulation linke und rechte Maustaste gegeneinander auszutauschen (d.h. normaler Klick -& rechte Taste; Shift Klick -& linke Taste).
Die Mausbewegungen werden als Analogwerte über die Paddleanschlüsse an den C64 übertragen. Daher ist es nicht möglich gleichzeitig Paddles und die Maus zu verwenden.
Power64 bietet besondere Unterstützung für die Mausemulation unter GEOS. Details finden Sie in Kapitel 8.
Alternativ kann Power64 die Macintosh Maus auch verwenden um zwei Paddle zu simulieren. Jedes Paddle kann dabei durch die horizontale und vertikale Position der Maus auf dem Macintosh Bildschirm gesteuert werden.
Ein echter C64 unterstützt in jedem der zwei Joystickports zwei Paddle, insgesamt also vier Stück. In Power64 sind die beiden Paddle immer an beiden Joystickports angeschlossen. Sofern das Spiel nicht erwartet, daß es von vier Spielern gleichzeitig gespielt wird sollte dies keine Probleme verursachen.
Weiters kann Power64 die Maus verwenden um einen Lichtgriffel zu simulieren.
Achtung: Solange die Mac Maus für die Simulation einer C64 Maus, Paddles oder eines Lichtgriffel verwendet wird, kann sie nicht zur Auswahl von Bildschirmbereichen (für Cut/Copy oder Drag/Drop) benutzt werden.
Power64 kann bis zu vier Commodore 1541 Floppy Disk Laufwerke an jedem Commodore C64 simulieren. Sie können dabei das weitverbreitete *.D64 und das technisch überlegene, aber selten genutzte *.X64 Dateiformat genauso verwenden wie ZipCode Dateien (Für Detail der Dateiformate siehe Anhang E.3(X64), E.4(D64) und E.5(ZipCode)). Außerdem unterstützt Power64 das *.G41 (= *.G64 = *.GCR) Diskettenformat für die hochpräzise Emulation eines 1541 Laufwerks. Alle diese Dateiformate kann Power64 auch dann nutzen wenn sie in einem ZIP, GZ oder LHA Archiv verpackt sind. Es ist nicht notwendig diese Archive vor der Nutzung zu entpacken. Das spart Platz auf der Macintosh Festplatte und macht es leicht CD-ROMs mit ZIP komprimierten *.D64 Dateien zu nutzen. Power64 ist allerdings nur in der Lage unkomprimierte und GZ-komprimierte Dateien zu schreiben, nicht aber ZIP oder LHA Archive. Daher sind alle Disk Images, die aus einem ZIP oder LHA Archiv stammen schreibgeschützt. Verwenden Sie Laufwerke/Diskettenlw. #x/Diskettentyp ändern um eine beschreibbare Kopie zu erzeugen. Alternativ können Sie auch auf das versperrte Schloß im Directoryfenster klicken um die Diskette beschreibbar zu machen. Power64 fragt dann beim Auswerfen der Diskette nach einem neuen Dateinamen.
Der echte C1541 Disk Drive ist ein sehr intelligentes Gerät, das über eine eigene MOS 6502 CPU, 16 KByte ROM, 2 KByte RAM und einige I/O Logik zur Ansteuerung der Floppy Drive Hardware verfügt. Einen Großteil der Zeit ist die M6502 unbeschäftigt und wartet nur auf ein Kommando. Wenn nun ein Kommando kommt, wird eine Stückchen Code aus dem ROM abgearbeitet und danach ist die M6502 wieder untätig. Es ist sehr ineffizient viel Mac CPU Leistung darauf zu verschwenden die M6502 vollständig zu simulieren, andererseits ist es erforderlich um optimale Kompatibilität zu erzielen.
Power64 bietet daher zwei Modi zur Floppy Emulation: Eine schnelle ROM Level Emulation, die allerdings nicht alle Tricks unterstützt, und eine CPU Level Emulation, die sehr genau ist, allerdings auch originalgetreu die Langsamkeit der 1541 emuliert. Zwischen diesen beiden Modi wird über Laufwerke/Diskettenlw. #x/Vollständige Disk Emulation (Cmd-E) umgeschaltet.
Um die Last auf die Macintosh CPU zu verringern, unterstützt Power64 die vollständige Floppyemulation nur für zwei der möglichen vier Laufwerke (Device #8 und #9).
Wenn die ROM Level Disk Emulation verwendet wird ersetzt Power64 die Routinen des 1541 ROM durch PowerPC Code, der nach außen das gleiche Verhalten zeigt, aber wesentlich schneller abgearbeitet werden kann. Dabei werden LOAD und SAVE für Programme sowie der Zugriff auf Sequentielle, Relative und Random Access Dateien unterstützt. Weiters unterstützt Power64 alle üblichen Floppy Kommandos wie NEW, COPY, RENAME, SCRATCH, VALIDATE, INITIALIZE, POSITION, MEMORY-READ/WRITE, BLOCK-READ/WRITE, BUFFER-POINTER, BLOCK-ALLOCATE/FREE, U1, U2, UI und UJ. Nur die Kommandos MEMORY/BLOCK-EXECUTE sind nicht unterstützt, da sie offensichtlich die vollständige Emulation der M6502 erfordern würden. Natürlich gibt es auch eine Kanal für Fehlermeldungen.
Der Commodore64 verwendet normalerweise ein sehr ineffizientes serielles Protokoll um Daten vom bzw. zum Diskettenlaufwerk zu übertragen, und erzielt so nur eine Datenrate von etwa 256 Byte/Sekunde. Im ROM Emulations Modus emuliert Power64 nicht dieses Protokoll, sondern führt den Transfer auf Byte Ebene durch, und erreicht somit eine Geschwindigkeit von ca. 250 KByte/Sekunde. Somit ist es möglich ein Spiel zu laden ohne zwischenzeitlich eine Kaffeepause machen zu müssen. Der Nachteil an diese Methode besteht darin, daß einige Spiele, die ihre eigenen Fastloader mitbringen nicht laufen. Oftmals laden auch solche Spiele ihren ersten Teil erfolgreich von Diskette, zweigen dann einen Intro-Bildschirm an und stürzen erst dann ab, wenn es darum geht,
weitere Teile von Diskette zu laden.
Die meisten Spiele werden mit der ROM Level Emulation funktionieren. Nur Power64 explizit meldet, daß die Floppy auf eine, mit der schnellen Emulation nicht kompatible Weise genutzt wird, oder wenn die Fehlermeldung 'COMMAND NOT EMULATED' im Disk Directory Fenster erscheint ist es erforderlich auf vollständige Floppy Emulation umzuschalten.
Im Vollständigen Floppy Emulation Modus simuliert Power64 das komplette Floppy Laufwerk. Dadurch ist es möglich eigene Programme (etwa Schnelllader, oder Kopierschutzmechanismen) von der CPU des Floppy Laufwerks ausführen zu lassen und Daten zwischen dem C64 und dem Floppy Laufwerk über ein privates Protokoll auszutauschen. Das führt zwar zu deutlich gesteigerter Kompatibilität, emuliert aber auch die langen Pausen die beim Laden einer größeren Datei entstanden originalgetreu.
Neben der Emulation eines 1541 Diskettenlaufwerks vermag Power64 auch die, seltener genutzen Laufwerkstypen 1571 und 1581 über *.D71 und *.D81 Disketten Images (Dateiformat siehe Anhang E.7(D71) und E.8(D81)) zu emulieren. Diese Laufwerke kamen erst auf den Markt als der C64 seinen kommerziellen Höhepunkt bereits überschritten hatte und konnten sich trotz hoher Kapazität nicht mehr durchsetzen. Daher wurden sie auch von den Autoren von C64 Software nie im selben Maße durch Fastloader und Kopierschutz- maßnahmen ausgereizt wie das populäre 1541 Diskettenlaufwerk. Power64 unterstützt für die 1571 und die 1581 nur die schnelle Emulation, die genaue Emulation bleibt der 1541 vorbehalten.
Vorsicht: Wenn die gleiche Disk, gleichzeitig von mehreren emulierten C64s liegt, dann verwendet jeder C64 seine eigene Kopie der Disk. Wenn ein C64 auf die Disk schreibt, erscheint die neue Datei nicht bei den anderen Rechnern. Wenn mehrere C64 jeweils auf ihre lokale Kopie schreiben, dann überschreibt der C64 der als letzter seine Kopie der Disk aus dem Laufwerk gibt, die Änderungen aller anderen. Es gibt keinen automatischen Schutz vor Datenverlust bei gleichzeitiger Nutzung einer Diskette durch mehrere C64.
Es ist zur Zeit nicht möglich ein echtes 1541 Floppy Laufwerk an einen Macintosh anzuschließen. Ich möchte aber alle interessierten Hardwarebastler dazu auffordern, ihr Können an einem derartigen Interface zu erproben.
Power64 bietet machtvolle Werkzeuge zur Manipulation von D64 Disk Images. Bitte lesen Sie Abschnitt 4.3 Dateimanagement für nähere Informationen.
Zusätzlich zur normalen C1541 kann Power64 auch einen Ordner der Macintosh Festplatte als virtuelle Diskette für den C64 nutzen. Dabei werden die beiden üblichen Dateiformate *.P00 und *.C64 (Details der Dateiformate siehe Anhang E.1(P00) und E.2(PRG/C64)) unterstützt. Power64 kann *.P00 und *.C64 auch lesen, wenn sie in einem ZIP, GZ oder LHA Archiv verpackt sind.
Die simulierte Festplatte wurde so gestaltet, daß sie ein Floppy Laufwerk nachahmt. Es gibt die Befehle LOAD und SAVE und die Möglichkeit das Inhaltsverzeichnis zu sehen. Allerdings gibt es klare technische Unterschiede zwischen der Festplatte und einer 1541 Floppy. Alle Tricks, die auf Details der 1541 Konstruktion beruhen, etwa Block Level Zugriffe sind mit der simulierten Festplatte nicht möglich. Auch wenn es programmtechnisch leicht möglich gewesen wäre Befehle wie Copy, Rename oder Delete für die Festplatte einzubauen, so hat sich der Autor doch dagegen entschieden, sodaß der Inhalt der Macintosh Festplatte vor wildgewordenen C64 Programmen geschützt ist.
Power64 bietet machtvolle Werkzeuge zur Manipulation von D64 Disk Images. Bitte lesen Sie Abschnitt 4.3 Dateimanagement für nähere Informationen.
Wenn sehr viele C64 Programme in einem Ordner liegen kann darunter schnell die Übersichtlichkeit leiden (und durch die vielen kleinen Dateien auch relativ viel Platz auf der Mac Festplatte beansprucht werden). Hier ist es geschickt alle diese Dateien zu einem ZIP Archiv zusammen zu fassen und so Überblick zu gewinnen und Platz zu sparen. Power64 kann den Inhalt eines ZIP Archivs lesen wie einen Ordner der Mac Festplatte, allerdings sind keine Veränderungen des Archivinhaltes möglich (Schreibschutz).
Wenn Sie selbst ZIP Archive erstellen, achten Sie bitte darauf, daß Ihr ZIP Programm (z.B. ZipIt) weder versucht die C64 Programme mit MacBinary (oder AppleSingle, AppleDouble, HQX etc.) zu 'verpacken', noch eine (Kaputt-)'Korrektur' der Zeilenumbrüche durchführt (in der Binärdatei, die es fälschlicherweise für einen ASCII Text hält). In ZipIt müssen also die Optionen MB (MacBinary) und LF (LineFeed) beide deaktiviert sein.
Power64 unterstützt Tape Image Dateien in den üblichen *.T64 und Lynx Dateiformaten (siehe Anhang E.8(Lynx) und E.9(T64)). Während das original Datasette Bandlaufwerk des C64 extrem langsam war (ca. 50 Byte/Sekunde) ist die Bandemulation der schnellste Weg um Daten in den emulierten C64 zu schaufeln (etwa 30 MByte/Sekunde nachdem das Band geladen ist). Power64 kann Tape Image Dateien auch lesen, wenn sie in einem ZIP, GZ oder LHA Archiv verpackt sind. Es ist nicht erforderlich die Archive vor der Verwendung zu dekomprimieren.
Power64 ist allerdings nur in der Lage unkomprimierte und GZ-komprimierte Dateien zu schreiben, nicht aber ZIP oder LHA Archive. Daher sind alle Tape Images, die aus einem ZIP oder LHA Archiv stammen schreibgeschützt. Verwende Sie Laufwerke/Diskettenlw. #x/Diskettentyp ändern um eine beschreibbare Kopie zu erzeugen. Alternativ können Sie auch auf das versperrte Schloß im Directory Fenster klicken um das Band beschreibbar zu machen. Beim Auswerfen des Bandes fragt Power64 dann nach einem neuen Dateinamen.
Die Tape Emulation von Power64 unterstützt die Befehle LOAD und SAVE sowie das Lesen und Schreiben von sequentiellen Dateien. Neue Dateien werden stets am Ende des Bandes hinzugefügt (es besteht also nicht wie beim echten Magnetband das Problem evtl. mit dem Ende einer Datei den Anfang der nächsten zu überschreiben). Wenn der Dateiname bereits einmal verwendet wurde, wird die alte Datei nur dann überschrieben, wenn die Doppelverwendung von Dateinamen unter Optionen/Disk & Band Einstellungen verboten wurde. Andernfalls existieren (wie auf einem echtem Magnetband) zwei Dateien mit dem gleichen Namen nebeneinander.
Bei einer echten Datasette ist es erforderlich die Play/Record Tasten zu drücken um Daten zu lesen bzw. zu schreiben. Dies geschieht in Power64 automatisch sobald ein Band eingelegt wird.
Auch das Rückspulen des Bandes erfolgt automatisch sobald das Ende des Bandes erreicht ist.
Wenn Sie nicht mehr sicher sind, welche Dateien auf dem Band gespeichert sind, können Sie mit LOAD"$",1 das Inhaltsverzeichnis des Bandes laden. Dies ist eine spezielle Funktion von Power64 die auf einem echten C64 nicht existiert. Power64 implementiert das Directory als eine spezielle Datei, die automatisch am Ende des Bandes gespeichert wird. Daher wird der emulierte C64, auf der Suche nach der Datei "$" zunächst alle anderen Dateien finden und ihre Namen auf dem Bildschirm anzeigen (um über den Fortschritt der Suche zu informieren), bevor er das Inhaltsverzeichnis lädt. Das führt dazu, daß das Directory zweifach angezeigt wird; einmal während der Suche nach dem Inhaltsverzeichnis, und einmal wenn das geladene Directory per LIST angezeigt wird.
Als das *.T64 neu eingeführt wurde, gab es keine Dokumentation über seinen internen Aufbau. Das führte dazu, daß viele Programmierer versucht haben zu erraten, wie das Dateiformat wohl aussehen mag, und nach ihren Erkenntnissen Werkzeuge zur Erstellung von *.T64 Dateien geschrieben haben. Leider sind dabei einige Fehler passiert, die dazu führen, daß viele im Internet verfügbare *.T64 Dateien fehlerhaft sind. Wenn Power64 auf eine solche Datei stößt wird es automatisch versuchen den Fehler zu beheben, und eine Dialogbox mit einer Warnung anzeigen.
Bei einem echten C64 war es möglich über die Tastenkombination Shift/Run die Befehlssequenz "LOAD <Enter> RUN <Enter>" einzugeben, und so die erste Datei vom Bandlaufwerk zu laden und zu starten. Das funktioniert nicht mit Power64, da Power64 es gestattet für LOAD und SAVE ein anderes Standardlaufwerk als das Bandlaufwerk (Device#1) zu verwenden (Details: siehe 5.11 Disk & Band Einstellungen). Wenn das Standardlaufwerk etwa auf ein Diskettenlaufwerk (oder eine Harddisk) gesetzt ist, versucht LOAD von dort zu laden, was zu einer Fehlermeldung wegen des fehlenden (und für Diskettenlaufwerke zwingend vorgeschriebenen) Dateinamens führt. Um sicher die erste Datei vom Bandlaufwerk zu landen ist das Kommando LOAD"",1 erforderlich.
Wie oben bereits erwähnt war das Diskettenlaufwerk an dem echten C64 extrem langsam. Daher haben viele Programmierer ihre eigenen Routinen für den Zugriff auf das Bandlaufwerk entwickelt und so Geschwindigkeitssteigerungen um den Faktor 10 erziehlt. Da die Simulation des Bandlaufwerkes in Power64 aber auf Routinen im ROM des C64 anknüpft funktionieren all diese Routinen nicht mit Power64.
Es ist zur Zeit nicht möglich eine echte Datasette an einen Macintosh anzuschließen. Ich möchte aber alle interessierten Hardwarebastler dazu auffordern, ihr Können an einem derartigen Interface zu erproben.
Power64 bietet machtvolle Werkzeuge zur Manipulation von D64 Tape Images. Bitte lesen Sie Abschnitt 4.3 Dateimanagement für nähere Informationen.
Power64 bietet auch die Möglichkeit *.T64 und Lynx Dateien im Diskettenlaufwerk zu nutzen. Auch wenn dies auf den ersten Blick befremdlich scheinen mag, so gibt es doch viele Lynx Dateien, die erwarten in einem Diskettenlaufwerk genutzt zu werden. Da im Allgemeinen kein Nachteil dadurch entsteht, wenn ein Tape Image in einem Diskettenlaufwerk genutzt wird, ist diese Möglichkeit sogar die Standardlösung von Power64.
Bei dieser Art der Verwendung von Tapes wird die Funktionalität eines Diskettenlaufwerk nachgebildet. Programme werden sich mit LOAD und SAVE geladen bzw. gespeichert, es ist möglich das Inhaltsverzeichnis zu lesen und auch einige grundlegende 1541 Kommandos wie NEW, VALIDATE, SCRATCH, COPY und RENAME sind verfügbar. Andererseits gibt es offensichtlich grundlegende Unterschiede zwischen Disketten und Magnetbändern, und so sind alle Tricks, die sich auf Details des Aufbaus der 1541 stützten, wie etwa das Lesen von einzelnen Sektoren unmöglich.
Neben den üblichen T64 und Lynx Tape Dateien unterstützt Power64 auch Tape Image Dateien im sehr exakten *.TAP Format (siehe Anhang E.10). Mit diesem Format lassen sich alle Details des Kasettenlaufwerks abbilden, insbesondere lassen sich so auch die verschiedensten Turbo-Tape Algorithmen wiedergeben. Power64 kann Tape Image Dateien auch lesen, wenn sie in einem ZIP, GZ oder LHA Archiv verpackt sind. Es ist nicht erforderlich die Archive vor der Verwendung zu dekomprimieren.
Grundsätzlich ist der Inhalt einer TAP Datei ohne feste Struktur, doch verfügt Power64 über intelligente Algorithmen, die jene Daten, die mit den Original ROM Routinen des C64 geschrieben wurden, erkennen und auslesen können sowie den Rest des Bandes in Bereiche die mit Daten in anderen Formaten beschrieben wurden und Leerraum zu unterteilen vermögen. Jene Bereiche, die Power64 auslesen kann, können, wie T64 Daten augenblicklich geladen werden. Für die Bereiche in proprietären Formaten bietet Power64 nur die Möglichkeit die Daten von einem C64 Programm interpretieren zu lassen. Dieser Vorgang ist zwar im allgemeinen schneller als das Lesen von Daten im Orignal C64 Format (ca. 110 Byte/Sekunde Spitze, durch doppelte Speicherung zur Fehlerkorrektur und Leerräume aber nur ca. 50 Byte/Sekunde Schnitt) kommt aber auch nicht über 200-500 Byte/Sekunde hinaus (je nach verwendetem Format). Das Laden eines Spieles kann also durchaus mehrere Minuten dauern. Um den Ladevorgang zu beschleunigen kann die Turbo-Boost Funktion von Power64 aktiviert werden (Optionen/Turbo Boost (Cmd-B)).
TAP Images sind in Power64 vollständig schreibgeschützt. Dieser Schreibschutz läßt sich nicht beseitigen. Außerdem ist es, wegen der Vielzahl der verwendeten Formate, nicht möglich Daten der Drag & Drop von einem TAP Image auf ein anderes Medium zu ziehen bzw. umgekehrt von einem anderen Medium auf ein TAP Image zu kopieren.
Bei einer echten Datasette ist es erforderlich die Play/Record Tasten zu drücken um Daten zu lesen. Dies geschieht in Power64 automatisch sobald auf das Band zugegriffen wird. Darüber hinaus ist es möglich das Band manuell vor- und rückzuspulen. Die entsprechenden Tasten der Datasette sowie ein Bandzähler sind im Directory Fenster nachgebildet. Durch Anklicken eines Directoryeintrages kann auch sofort zu einer Position zwei Sekunden vor dem Eintrag gespult werden. Dieser Versatz des Spulzieles ist erforderlich, da nach einem Lesebefehl der Bandmotor zunächst eine Weile benötigt um anzulaufen.
Standardlaufwerk für LOAD und SAVE:
Bei einem echten C64 ist das Bandlaufwerk (Laufwerk #1) das Standardlaufwerk für LOAD und SAVE. Andererseits sind die meisten Spiele für Emulatoren im *.D64 Format gespeichert. Daher kann es nützlich sein, ein anderes Laufwerk zum Standardlaufwerk zu machen (etwa das primäre Diskettenlaufwerk - Laufwerk #8), und sich so das Tippen der Gerätenummer bei jedem LOAD und SAVE Kommando zu ersparen.
Besonders vorteilhaft ist die Einstellung 1-8-9. Hier prüft Power64 zunächst, ob im Bandlaufwerk (Laufwerk #1) ein Medium eingelegt ist. Falls dies der Fall ist, wird versucht von dort zu laden/dorthin zu speichern. Anderfalls wird zunächst das primäre Diskettenlaufwerk (Laufwerk #8) und dann das sekundäre Diskettenlaufwerk (#9) auf eingelegte Disketten untersucht. Da nur selten gleichzeitig das Bandlaufwerk und das Diskettenlaufwerk genutzt werden, findet Power64 so fast immer das korrekte Laufwerk. Die Einstellung 8-9-1 funktioniert wie 1-8-9 doch werden zuerst die Diskettenlaufwerke und erst dann das Bandlaufwerk betrachtet.
Warnung für vollständige Floppy 1541 Emulation:
Sofern C64 Programme die Floppy 1541 detailgenau nutzen, stürzen Sie im allgemeinen ohne sinnvolle Fehlermeldung ab, wenn sie die vollständige 1541 Emualtion abgeschaltet ist. Um den Grund solcher Probleme klarer darzustellen, kann Power64 eine Warnung ausgeben, wenn ein C64 Programm die Floppy auf eine Weise nutzt, die von der schnellen Emulation nicht unterstützt wird. Dabei bietet Power64 die Wahl entweder die Warnung in den Wind zu schlagen, mit dem Ladevorgang fortzufahren und auf das Beste zu hoffen, oder einen Reset des C64 durchzuführen und mit aktivierter vollständiger Floppy Emulation den Ladevorgang erneut zu starten.
Intelligente Floppy 1541 Emulation:
Spiele die die vollständige Floppy 1541 Emulation nutzen verwenden die Floppy CPU normalerweise nicht die ganze Zeit, sondern laden erst einige Daten mit ihrem eingebauten Fastloader, und lassen die Floppy dann wieder lange Zeit ungenutzt bevor evtl. der nächste Level nachgeladen wird. Power64 versucht herauszufinden, wann die Floppy ungenutzt ist, und macht dann eine Pause bei der Emulation. Obwohl der Algorithmus der die ungenutzten Zeiten der Floppy feststellt recht geschickt ist, ist es doch möglich ihn mit der richtigen Software auszutricksen, so daß es für manche Spiele nötig sein kann ihn abzuschalten.
Autom. Turbo Boost für volle 1541 Emulation:
Wenn die volle 1541 Emulation aktiviert ist (etwa weil das Spiel einen Fastloader oder Kopierschutz einsetzt), dauert das Laden des Programms (bzw. Nachladen von weiteren Daten) sehr lang. Power64 bietet einen Turbo Modus, bei dem die Geschwindigkeit des emulierten C64 nicht auf die Geschwindigkeit eines Original C64 beschränkt ist, sondern so schnell gerechnet wird, wie die Mac CPU kann. Wenn die Option Autom. Turbo Boost für volle 1541 Emulation aktiv ist, wird der Turbo Boost Modus immer dann aktiviert, wenn aktiv auf die volle emulierte 1541 zugegriffen wird (also wenn z.B. Daten geladen werden) und danach wieder deaktiviert. Dadurch werden die Ladenzeiten auf ein erträgliches Maß gekürzt ohne, daß das Spiel selbst durch rasenden Ablauf unspielbar wird. Einige Spiele trennen nicht zwischen Laden und Spielen sondern verwenden trickreiche Floppy Routinen, die während des Spielens schon Daten nachladen. In diesen Fällen muß der automatische Turbo Boost für die volle 1541 Emulation abgeschaltet werden, da Power64 sonst fälschlich 'tote' Ladezeit erkennt und das Programm auf unspielbares Tempo beschleunigt.
Band/Lynx Dateien in Diskettenlaufwerk einlegen:
Power64 kann T64 und Lynx Dateien sowohl im Bandlaufwerk als auch im Diskettenlaufwerk nutzen. Logischerweise (und aus Gründen der Authentizität) gehören diese Dateien ins Bandlaufwerk, andererseits gibt es aber einige Lynx (seltener T64) Dateien die nur korrekt funktionieren, wenn sie in einem Diskettenlaufwerk verwendet werden. Abhängig von dieser Option wird Power64 Tape Images entweder im Band- oder im Diskettenlaufwerk nutzen. Diese Einstellung bezieht sich nur auf das Einlegen eines Bandes via Drag&Drop oder Cmd-T. Es ist weiterhin möglich, durch gezielte Auswahl eines Laufwerks im Laufwerke Menü ein T64/Lynx Image in ein bestimmtes Laufwerk zu legen.
Alle Dateien auf Band sind vom Typ 'PRG':
Leider sind viele T64 Dateien im Internet schadhaft. Power64 versucht die Schäden so gut wie möglich zu beheben. Insbesondere muß Power64 versuchen den Typ aller Dateien auf dem Tape Image zu erraten. Mit dieser Option läßt sich die Logik von Power64 ausschalten, und allen Dateien der Typ 'PRG' zuweisen. Das ist der am weitesten verbreitete Dateityp und somit ein guter Tipp. Auch wenn eine Datei den Typ 'PRG' haben muß, damit man sie per Doppelklick im Directory laden kann, können auch Dateien mit anderem Typ durch händische Eingabe des benötigten LOAD Kommandos geladen werden.
Warnung bei schadhafte Bändern anzeigen:
Wenn Power64 auf eine schadhafte T64 Datei stößt kann es eine Warnung ausgeben. Glücklicherweise ist Power64 recht geschickt, wenn es darum geht solche Dateien zu reparieren, und wenn die Warnhinweise nur als Belästigung angesehen werden, lassen sie sich auch abschalten..
Doppelte Dateinamen auf Bändern zulassen:
Auf Original C64 Kassetten gibt es kein zentral verwaltetes 'Inhaltsverzeichnis'. Das Band ist eine unstrukturierte Kette von Bits und es ist Aufgabe des Benutzers durch geschicktes Spulen des Bandes dafür zu sorgen, daß keine zwei Dateien einander überlappen (und somit zerstören). Folglich sind auch doppelt genutzte Dateinnamen kein Problem. Power64 kann nun das Original C64 Verhalten übernehmen und jede neu auf einem T64 oder Lynx Image gespeicherte Datei einfach hinten anhängen, oder aber, wenn bereits eine Datei gleichen Namens gespeichert ist, die alte Datei vorher löschen.
Intelligente Datasette Emulation:
Auf einer TAP Kassette sind die Daten stets (zumindest zum Teil) in jenem Datenformat abgespeichert, mit dem die Original C64 ROM Routinen Daten schreiben, während andere Teile evt. in einem speziellen nur mit geeigneter Software lesbaren Format codiert sind. Das Original C64 Format kann Power64 lesen, und die Daten nach einem LOAD Befehl augenblicklich zur Verfügung stellen, statt sie langsam (50 Byte/Sekunde) vom C64 Code lesen zu lassen. Dies beschleunigt den Ladevorgang gewaltig, ohne die Kompatibilität zu schmälern und wird daher dringen empfohlen.
Schreiben für alle Disketten/Bänder erlaubt:
Wenn Power64 eine Diskette oder ein Banddatei einliest, die es nicht wieder an die Originalstelle zurückschreiben kann (etwa weil von einer CD-ROM oder einer schreibgeschützten Diskette gelesen wurde, oder weil die Datei Teil eines ZIP Archivs ist) dann kann Power64 einen Schreibschutz für das virtuelle Medium aktivieren. Dieser kann entweder im Directoryfenster mit einem Klick auf das Schloßicon gelöst werden oder über die Einstellung 'Schreiben für alle Disketten/Bänder erlaubten' von vorne herein aufgehoben sein. Wenn eine solche Diskette/Banddatei verändert wurde, fragt Power64 beim Auswerfen nach einem neuen Dateinamen.
Finder Type/Creator an Power64 anpassen:
Jede Macintosh Datei hat einen Type und einen Creator. Diese Information wird vom Finder genutzt um festzustellen, welche Applikation gestartet werden soll, wenn der Benutzer eine Datei öffnen will. Wenn ein Disk oder Tape Image in eine Laufwerk eingelegt wird, daß keine Type/Creator Information trägt, kann Power64 diese Information nachtragen. Das ist sehr nützlich wenn Sie viele Dateien vom Internet geladen habe, die (weil sie etwa von DOS/Windows oder UNIX Rechnern stammen) keine brauchbare Type/Creator Information tragen. Andererseits ist es nicht die feine Art für ein Macintosh Programm den Type/Creator fremder Dateien zu manipulieren. Daher kann bei Power64 gewählt werden, ob der Type/Creator stets, nie oder nach Nachfrage beim Benutzer gesetzt werden soll. Dabei wird unterschieden, ob der alte Type/Creator von Frodo stammt (einem anderen C64 Emulator für den Macintosh) oder für einen unbekanntes Programm konfiguriert war.
Bestimmung der Dateityps per Type/Creator:
Um den Typ einer Datei zu bestimmen untersucht Power64 immer zuerst den Anfang der Datei. Wenn dabei kein bekannter Datei Header gefunden wird (einige Dateiformate bieten leider keinen erkennbaren Header), kann Power64 sich entweder nach dem eingestellten MacOS Type/Creator richten, oder aber den Dateinamen (genauer: die Dateinamenserweiterung) zur Identifikation heranziehen. Die Verwendung der MacOS Type/Creator Information entspricht dem Macintosh Standard und wird daher dringend empfohlen. Nur wenn das Laufwerk keine brauchbare Information liefert (etwa DOS CD-ROMs) kann er erforderlich sein, hier auf die Betrachtung des Dateinamens umzuschalten (und so die unter MacOS eigentlich übliche 100& Freiheit bei der Wahl des Dateinames zu unterlaufen).
Laufwerk Status LEDs:
Um ein Auge auf den aktuellen Zustand der Diskettenlaufwerke zu halten, ohne den Bildschirm mit Directory Fenstern vollzuräumen wählen Sie Laufwerke/Laufwerk Status LEDs (Cmd-L; mit Opt-Cmd-L gilt die Änderung in allen C64 Fenstern). Power64 stellt nun für jedes Diskettenlaufwerk zwei Symbole im linken unteren Eck des Emulatorfensters dar: Das erste Symbol steht für die Floppy LED. Sie ist aus (grau), wenn die Floppy nicht aktiv ist. Eine grüne LED steht für Lesezugriff, rot für Schreibzugriff und gelb für offene Dateien ohne Lese/Schreibzugriffe. Das zweite Symbol gibt es Fehlerstatus des Laufwerks wieder; ein grünes Häkchen bedeutet Ok, ein rotes Kreuz steht für Fehler.
Directory automatische anzeige wenn…:
Wenn ein neues Medium in ein Laufwerk des emulierten C64 eingelegt wird kann Power64 automatisch ein Fenster mit dem Inhaltsverzeichnis anzeigen. Durch einen Doppelklick auf ein Programm kann dieses dann geladen und gestartet werden (Details im folgenden Abschnitt).
Anmerkung: Auch wenn diese Option ausgeschaltet ist, kann sie durch Halten der Optionstaste während der Einlegen des neuen Mediums kurzfristig aktiviert werden.
Doppelklick im Directory entspricht:
Wenn im Inhaltsverzeichnis ein Programm mit Doppelklick angewählt wird, kann Power64 es automatisch laden und ausführen. Welche Kommandos dazu genau benutzt werden, läßt sich über diese Option einstellen. Wenn während des Doppelklicks die Optionstaste gedrückt ist, wird (unabhängig von den gewählten Einstellung) stets LOAD"Datei",8 ausgeführt.
Anmerkung: Power64 simuliert die Tastatureingaben für die nötigen Befehle. Dies hat den gewünschten Effekt, wenn der emulierte C64 beim BASIC Prompt auf Tastatureingaben wartet. Wenn bereits ein anderes Programm läuft, dann wird dieses Programm die Tastatureingaben erhalten und damit möglicherweise interessante Dinge anstellen.
Festplatte an jeden neuen C64 anschließen:
Power64 can bei jedem neu erstellten C64 als Laufwerk #8 und/oder Laufwerk #9 automatisch einen Ordner der Mac-Harddisk anzubinden. Das macht es besonders einfach ein Spiel aus einer Sammlung von C64/P00 Dateien zu starten. Weiters wird so jedem C64 Programm ein Laufwerk zum Auslagern von Daten geboten. Wenn automatisch eine Harddisk angebunden wird, kann auch ihr Inhaltsverzeichnis sofort angezeigt werden. Dies ist unabhängig von der oben beschriebenen automatischen Anzeige des Inhaltsverzeichnisses beim Einlegen eines Mediums in ein Laufwerk.
Power64 unterstützt zwei Drucker pro emuliertem Commodore64. Die Daten, die an einen C64 Drucker geschickt werden, werden nicht auf dem Macintosh Drucker ausgegeben, sondern in ein Macintosh Datei umgeleitet. Von dort können sie bequem in ein Macintosh Programm zur Nachbearbeitung oder zum tatsächlichen Ausdruck eingelesen werden.
Power64 unterstützt dabei drei Druckermodi:
Im Text Modus übersetzt Power64 alle gedruckten Zeichen vom CBM Zeichensatz in den Zeichensatz des Macintosh. Sofern keine geeignete Übersetzung existiert (etwa bei Grafikzeichen), werden die entsprechenden Zeichen einfach unterdrückt. Im Text Mode mit Hex-Grafik übersetzt Power64 Grafikzeichen in Hexadezimale Ziffern. Im Binärmodus findet überhaupt keine Bearbeitung statt. Jedes Byte vom C64 wird unmittelbar in der Datei gespeichert.
Die Druckerdatei trägt den Namen 'C64 Drucker - tt.mm.jjjj (x)' wobei tt.mm.jjjj für das aktuelle Datum steht und x ein Zähler ist. Über Neuen Drucker-Ordner wählen läßt sich der Ordner wählen in dem diese Dateien erzeugt werden.
Um die Performance zu verbessern verfügt Power64 über interne Puffer für die Druckerausgabe. Diese Puffer werden geleert, sobald das Emulatorfenster geschlossen wird, oder wenn Laufwerke/Drucker #x schließen gewählt wird. Alle weiteren Ausgaben werden dann in eine neue Datei geschrieben.
Einige Eigenschaften des original C64 sind für einen Emulator nicht nützlich, oder entsprechen evtl. nicht den Vorlieben aller Nutzer. Über den ROM Patches Dialog lassen sich einige Einstellungen anpassen.
Kernal ROM:
Über die vielen Jahre, die der C64 produziert wurde, hat Commodore einige male kleine Anpassungen am Kernal ROM vorgenommen. Insgesamt gab es drei Versionen: Rev. A wurde in den ersten C64s verwendet. Rev. B wurde in den Jahren 1982/83 eingesetzt und Rev. C war die letzte Version. Der einzige Unterschied, den man im normalen Betrieb jemals wahrnehmen wird ist wie das FarbRAM gehandelt wird, wenn der Bildschirminhalt gelöscht wird. Rev.A tut hier überhaupt nichts, Rev.B füllt das FarbRAM mit der Hintergrundfarbe und Rev.C füllt das FarbRAM mit der aktuellen Textfarbe.
Schneller Reset (RAM Test umgehen):
Ein original C64 führt beim Starten und nach jedem Reset einen recht genauen Speichertest durch, um Hardwarefehler festzustellen und das verfügbare RAM zu erkennen. Dazu benötigt er rund 3 Sekunden. Bei einem emulierten C64 gibt es keinen guten Grund den Speicher zu testen (das hat der Mac schon bei seinem Systemstart erledigt) und auch die Menge an verfügbarem RAM ist schon vorher bekannt, so der RAM Test ohne Schaden übersprungen werden kann, und die 3 Sekunden eingespart werden.
Cartridge-ID beim Reset beachten:
Das ROM eines Commodore64 kann durch ROM Steckmodule erweitert werden. Das wurde für Spiele, aber vorallem auch für Tools wie Simon's BASIC genutzt. Das ROM des Steckmoduls wird dabei auf die Adresse $8000-$9FFF (8 KByte Modul) oder $8000-$BFFF (16 KByte Modul) abgebildet.
Während der Reset-Routine sucht der C64 nach dem magischen String "CBM80" an den Adressen $8004-$8008. Wenn dieser String gefunden wird, erkennt der C64, daß ein ROM Steckmodul vorhanden ist (auch wenn der magische String evtl. im RAM stehen mag) und führt einen Sprung nach ($8000) durch. Somit erhält das ROM des Steckmoduls sehr früh die Chance sich zu starten und alle Initialisierungen durchzuführen, die erforderlich sind. Andererseits kann diese Funktion genutzt werden, um Spiele zu schreiben, die auch durch einen Reset nicht beendet werden können.
Wenn Honor-Cartridge-ID on Reset aktiv ist, wird Power64 nach dem magischen String suchen wie ein echter Commodore64. Wenn diese Option hingegen nicht gewählt ist, wird der magische String niemals gefunden, auch wenn er vorhanden sein sollte. Bitte beachten Sie, daß einige Spiele diesen String benötigen um korrekt zu laufen. Es ist daher nicht empfehlenswert diese Option abzuschalten. Es ist jederzeit möglich einen harten Reset zu erzwingen; wenn während des Reset die Optionstaste gedrückt ist wird die Cartridge ID unabhängig von dieser Einstellung nicht gefunden.
Cartridge-ID beim NMI (Non Maskable Interrupt) beachten:
Der gleiche magische String der es dem Steckmodul ermöglicht während eines Reset die Kontrolle über den C64 zu ermöglichen, bietet dem Modul auch die Möglichkeit einen NMI speziell zu behandeln. Somit kann die Restore Taste vom Modul für spezielle Zwecke genutzt werden.
Wenn Honor-Cartridge-ID on NMI aktiv ist, wird Power64 nach dem magischen String suchen wie ein echter Commodore64. Wenn diese Option hingegen nicht gewählt ist, wird der magische String niemals gefunden, auch wenn er vorhanden sein sollte. Bitte beachten Sie, daß einige Spiele diesen String benötigen um korrekt zu laufen. Es ist daher nicht empfehlenswert diese Option abzuschalten.
Emulator Erkennung:
Wolfgang Lorenz hat für seinen Emulator PC64 eine Methode entwickelt, mit der C64 Software feststellen kann, ob sie auf einem echten C64 oder auf einem Emulator läuft. Auf einem zu dieser Methode konformen Emulator wird das Byte an Adresse $DFFF bei jedem Lesezugriff zwischen $55 und $AA umgeschaltet. Für weitere Details zu diesem Thema lesen Sie bitte Anhang F.
Zeichensatz ROM:
Der Zeichensatz des C64 enthält, so wie er im ROM aller C64 enthalten ist zwei 'Fehler'; die Grafikzeichen #101 ($65) und #103 ($67) sind im ROM dicker als in der Dokumentation zum C64. Power64 kann wahlweise die original C64 Fonts verwenden (und somit optimale Kompatibilität bieten), oder den Font reparieren (und so Konstistenz zur Dokumentation herstellen).
So oder so verfügt der Commodore64 über eine sehr fette Systemschrift. Wer einen leichteren Zeichensatz bevorzugt, kann den Zeichensatz des VC-20 verwenden. Allerdings sind hierbei nicht nur die Buchstaben, sondern auch die Grafikzeichen deutlich dünner, was bei einigen Spielen eigenartig aussehen kann.
Standardfarben (Text/Hintergrund/Rahmen):
Nach dem Einschalten präsentiert sich ein original C64 mit einem dunkelblauen Bildschirm, mit hellblauem Rand und hellblauer Schrift. Diese Farbzusammenstellung trifft nicht jeden Geschmack und stellt sicher nicht den Höhepunkt optimaler Lesbarkeit dar. Es ist daher in Power64 möglich beliebige, eigene Farbzusammenstellungen zu definieren (allerdings müssen Hintergrund und Text verschiedene Farben aufweisen, damit man etwas lesen kann).
GEOS Beschleunigung:
Power64 bietet besondere Unterstützung für GEOS, das Graphic Environment Operating System von GEOWorks. So wird der Diskettenzugriff wesentlich beschleunigt, und die Verbindung zwischen Mac Maus und C64 Maus optimiert (Details siehe Kapitel 8).
Viele Spiele verwenden Sprites um Freunde, Feinde, Schüsse und ähnliches auf dem Bildschirm darzustellen und verlassen sich auf die Fähigkeit des VideoIC Kollisionen zwischen Sprites oder eines Sprites mit dem Bildschirmhintergrund festzustellen. Wenn nun eine Kollision erkannt wurde, führt das Spiel eine passende Handlung durch; wenn etwa das Spielersprite mit dem Laserstrahl-Sprite kollidiert findet der Held ein vorzeitiges Ende.
Power64 bietet die Möglichkeit die Sprite Kollisionserkennung feinkörnig zu unterbinden. Sowohl Sprite/Sprite als auch Sprite/Hintergrund Kollisionen können für jedes Sprite getrennt an oder ab geschaltet werden. So können Kontakte des Helden mit Bonus-Punkten weiterhin erkannt werden, während gleichzeitig die Kollision des Helden mit seinem Widersacher ohne Folgen bleibt.
Nicht alle Spieleprogrammieren haben zu Kollisionserkennung die Hardwarelösung des VideoIC genutzt. Immer wieder findet man Spiele, deren Programmierer die Kollisionserkennung mit eigener Software gelöst haben, und bei denen ein Abschalten der Hardwarelösung natürlich keinen Effekt zeigt. Um die Softwarelösung auszuhebeln bedarf es des viel Geduld und das geübte Auge eines intelligenten Menschen. Mit künstlicher Intelligenz ist diese Aufgabe nicht lösbar.
Quelle: http://www.infinite-loop.at/Power64/Documentation/Power64-LiesMich/05-Commodore_C64.html Power64 Homepage: http://www.infinite-loop.at und http://www.salto.at - EMail: © Roland Lieger, Goethegasse 39, A-2340 Mödling, Österreich Letzte Änderung: 29. Feb. 2008 |