(C) Petter Schau 1996/1997/1998/1999. (pschau@online.no)
Programmtechnische Beiträge außerdem von:
(C) Roman Dolejsi 1997
(roman@sorry.vse.cz)
(C) David Voracek 1997
(assassin@paru.cas.cz)
(C) Rainer Sinsch 1998
(sinsch@stud.uni-frankfurt.de)
Bitte auf die Credits-Seite gehen, um Details über Personen zu erfahren, die anderweitig an diesem Projekt beteiligt waren.
Die Rechte dieses Programms liegen alleine bei Petter Schau und am Projekt beteiligten Personen.
Sie dürfen dieses Programm frei nutzen.
Unter Beachtung aller folgenden Beschränkungen darf dieses Programm
auch frei vertrieben werden:
*) Der Inhalt dieses ZIP-Archivs muss intakt und absolut unverändert
sein.
*) Es darf kein Profit gemacht werden, der den Preis dieses Programmes
übersteigt, d. h. ist das Programm kostenlos, darf es auch nicht
für Geld vertrieben werden.
*) Eine Redistribution dieses Produkts ändert in keinem
Verhältnis die Bedingungen, unter denen dieses Programm benutzt und
vertrieben wird.
*) Das Programm darf auf CDs vertrieben werden, die auch andere
Freeware-Programme enthalten.
*) Ein Abweichen von der Beschränkung, diese Software kostenlos
zu vertreiben, erfordert die Erlaubnis der Autoren.
*) Der Emulator wird 1:1 vertrieben - sie benutzen diese Software
also auf Ihr eigenes Risiko. Es besteht darüberhinaus weder Anspruch
auf irgendeine Art von Support noch ein Anspruch darauf, dass der Autor
etwaige Fehler in der Software umgehend ausbessern muss.
*) Sie stimmen bei Nutzung dieser Software der Bedingung zu,
dass der Autor für keinerlei Probleme, die bei Benutzung des Programms
auftreten können, haftbar gemacht werden kann.
*) Die o. a. Beschränkungen gelten auch für das Source-Code-Archiv
des Fellow-Emulators.
Für das Source-Code-Archiv des Emulators gelten noch die folgenden zusätzlichen Beschränkungen:
Sie dürfen - für den persönlichen Gebrauch - diese Software in jeder erdenklichen Weise modifizieren und/oder erweitern.
Sollten Sie eine Veränderung/Erweiterung vornehmen, die möglicherweise
für die Allgemeinheit interessant sein kann (z. B. wenn Sie eine zusätzliche
Funktion hinzufügen), freuen wir uns, wenn wir von Ihnen hören,
damit wir die Veränderung und/oder Erweiterung ins Source-Code-Archiv
aufnehmen können.
Das Einbinden von Teilen des Source-Codes in andere frei vertriebliche
Software ist gestattet, solange die Autoren zuerst benachrichtigt und -
zur Würdigung ihrer Arbeit - namentlich erwähnt werden.
"AMIGA", "AmigaOS", "Kickstart" und "Workbench" sind eingetragene
Warenzeichen von Amiga International. Andere Namen, die hier
erwähnt werden, sind Warenzeichen der entsprechenden Warenzeicheninhaber.
[Anm. d. Übers.: Auf dem DOS-Emulator hatte ich mit Fellow noch
einige Probleme; z. B. war nur der Grafik-Modus
320x200 verfügbar und Fellow hängte sich ziemlich oft auf.
Die Maus funktionierte nur dann, wenn man den Maustreiber "MSCMOUSE" verwendete.]
Während der Entstehungsphase von Fellow wurde stets der Commodore
Amiga 500 als Referenzmodell des Amiga
benutzt, daher zielt eine Standardkonfiguration von Fellow auch gerade
darauf ab, die Geschwindigkeit und das Feeling
dieses besonderen Amigas auf Ihrem PC möglichst realitätsnah
nachzubilden.
Fellow lässt sich auch sehr gut auf spezielle Bedürfnisse
anpassen; es können erweiterte Optionen aktiviert werden, um
Amigas zu emulieren, die einer höheren Klasse der Amiga-Familie
angehören als der des Amiga 500. Es ist in höchstem
Maße ratsam, sich über die Gesamtheit an Einstellmöglichkeiten
zu informieren, um Ihnen die Stärken des Emulators demonstrieren und
Grenzen aufzeigen zu können.
Der Amiga 500 wurde erstmals 1987 vorgestellt als ein Nachfolger des
Amiga 1000. Er bot sich auf Jahre hinweg als der
Computer für Einsteiger an und war der populärste Vertreter
der Amiga-Familie.
Schnell wurde der Amiga 500 eine beliebter Computer für Spiele
und Demos. Dank seiner zahlreichen, der gestiegenen
Nachfrage nach schnellerer Grafikabarbeitung angepassten Coprozessoren
glänzte er durch vielfältige Fähigkeiten im Multi-
media-Bereich und bestach durch 4-kanaligen, samplebasierten Stereosound.
Einerseits durch seine erhöhten grafischen Fähigkeiten, andererseits durch ein fensterbasiertes Multitasking-Betriebssystem, war der Amiga - stellte man ihn damaligen Home-Computern gegenüber -, seiner Zeit weit voraus.
Obwohl es jetzt weit über 10 Jahre her ist, seitdem der Amiga erstmals
der Öffentlichkeit vorgestellt wurde, verlangt er
heutigen PCs immer noch einiges an Rechenzeit ab: es ist daher mindestens
ein Pentium-Prozessor erforderlich, um einen
"Amiga" in Originalgeschwindigkeit
laufenlassen zu können.
Besonders die erkleckliche Menge an Grafikprozessen sowie die Steuerung
des Zusammenspiels der vielen einzelnen
Geräte und Hardwarekomponenten verbrauchen den größten
Teil an CPU-Zeit.
Der Amiga-Emulator "Fellow" wurde von Petter Schau "geboren" - die erste
der Öffentlichkeit zugängliche Version kam
im Dezember 1996 heraus. Es vergingen einige Jahre, in denen
mit völlig verschiedenen Methoden herumexperi-
mentiert wurde, mit dem Ziel, eine schnelle Emulation ausgewählter
Teile der Amiga-Hardware zu ermöglichen.
Heute ist Fellow ein nahezu vollständiger softwaremäßiger
Emulator eines Amiga 500 und mehr, nicht zuletzt dank der
Arbeit einiger weiterer Personen, die programmiertechnisch dazu beitrugen.
2. Ihre Hardware muss, um Fellow benutzen zu
können, folgende Mindestanforderungen erfüllen:
(am besten sollte sie sie
natürlich übertreffen!)
Ohne VBE-2.0-Unterstützung stehen Ihnen die meisten Grafikmodi nicht zur Verfügung, wenn Sie Fellow benutzen!
Fellow ist ganz schön CPU-intensiv; also falls Sie den unbändigen
Wunsch haben sollten, grafikintensive Amiga-Program-
me in der Geschwindigkeit eines echten Amiga ablaufen lassen zu können,
werden Sie um einen Prozessor in der Klasse
Pentium 133...166 und eine schnelle PCI/AGP-Grafikkarte nicht herumkommen
- außerdem werden auch andere Faktoren wie RAM-Zugriffsgeschwindigkeit
sicher Ihre Resultate beeinflussen (beachten Sie dass ein DIMM [SDRAM]
eine Zu- griffszeit von 10 ns [Nanosekunden] hat, während ein Standard-EDO-RAM
bei 60 ns ~ 70 ns arbeitet!)
Ein Abbild eines AmigaDOS-Kickstart-ROMs, das von dem Kickstart-ROM
eines ECHTEN Amiga gemacht wird.
Sie können die Datei erzeugen, indem Sie TransROM benutzen (finden
Sie im Fellow-Package). Der Kickstart ist
copyright-geschützte Software, die deswegen aus ersichtlichen
Gründen dem Emulator selbstverständlich nicht
beiliegen darf.
Die beste Methode, diese Image-Datei zu bekommen, ist, entweder die
Kickstart-Software von einem Amiga, den Sie besitzen, zu kopieren, oder
die "Amiga Forever"-CD
von Cloanto zu kaufen, welche lizensierte
Kickstart-ROM-Images
sowie Workbench-Software (angefangen von V1.0 bis hoch zu V3.0) enthält,
die bereits für sofortigen Einsatz in einem Emulator vorbereitet ist.
CLI> transrom >RAM:kick.rom
Dies kopiert den Kickstart-ROM-Chip (das Kickstart-ROM befindet sich
auf einem Chip) und schreibt diesen in eine
Datei in die RAM-Disk "RAM:" unter dem Namen "kick.rom". Diese Datei
muss dann auf den PC kopiert werden und
sich im Fellow-Verzeichnis befinden (es kann allerdings auch aus einem
anderen Verzeichnis geladen werden).
Ein Disk-Image ist eine Datei, in der die Daten enthalten sind, die sich normalerweise auf einer Diskette befinden.
Ein PC-Diskettenlaufwerk kann keine Amiga-Floppy-Disk lesen.
[Anm. d. Übers.:]
Diese Frage wird sehr häufig gestellt, deswegen
erkläre ich es hier kurz:
Es liegt am Controller des PC-Diskettenlaufwerks,
der keine Informationen aus Amiga-Disketten verarbeiten
kann. Die einzige Möglichkeit besteht darin,
einen (externen) anderen Controller zu verwenden: zur Zeit ist
der "Catweasel"
in aller Munde, der auch andere Fremdformate lesen kann (z. B. C64, Atari).
Daran liegt es auch, dass Sie, um Fellow benutzen zu können, zwingend ein Image irgendeiner Amiga-Diskette benötigen.
Transdisk wird vom AmigaDOS-Prompt aufgerufen und kopiert eine Floppy-Disk,
Track für Track ("raw"), in eine
Datei (die für Fellow lesbar ist).
CLI> transdisk >RAM:df0.adf
Dies erzeugt ein Image von irgendeiner Diskette die sich gerade in DF0:
befindet. Die Diskette muss nicht unbedingt
"df0.adf" genannt werden - Sie können jeden Namen verwenden,
den Sie mögen.
Um optimale Ergebnisse zu erzielen, sollten Sie sich den Treiber "BaudBandit.device"
besorgen, der das Standard-
"serial.device" auf dem Amiga ersetzt, außerdem sollten Sie bei
beiden
Terminalprogrammen eine Übertragungsrate von 57600 bps einstellen.
BaudBandit sollte eine Datenübertragung von bis zu 5500cps (Zeichen
pro Sekunde) zu/von einem 68000er-Amiga ermöglichen! BaudBandit.device
gibt es im Aminet.
Wenn Sie einer von denen sind, die Amiga OS 1.2/1.3 haben und einen
A500 ihr eigen nennen, der zudem mit nur einem Laufwerk ausgestattet ist,
dann könnten Sie in Schwierigkeiten geraten.
Sofern Sie keine Terminalsoftware haben, die sich auf einer echten
880KB Floppy-Disk befindet und die Sie in einem
zweiten Laufwerk booten können, gibt es keine Möglichkeit,
übers Nullmodem-Kabel mit dem PC zu kommunizieren.
[Anm. d. Übers.: gibt es doch! Der Österreicher Wolfgang
Stöggl hat ADF Sender Terminal entwickelt, mit dem
genau dies möglich ist! Schauen Sie auch
unbedingt mal auf seiner Seite
vorbei - es lohnt sich!]
Wenn Sie kein Nullmodem-Kabel haben, oder sich nicht extra eins anschaffen
wollen, [Anm. d. Übers.: gibt's bei
Conrad für weniger als 10 DM], können Sie Amiga-Software
zum PC unter Verwendung einer 720KB PC-Diskette übertragen [Anm.
d. Übers.: diese haben Double Density (DD) (=doppelte Dichte)]
Die Workbench-Versionen 2.1 (und höher) werden standardmäßig
mit CrossDOS ausgeliefert: mit dieser Software
können Sie 720KB-PC-Disketten in Ihrem Amiga-Laufwerk lesen und
beschreiben!
Wenn Sie kein CrossDOS haben, Ihnen also keine Workbench in der Version
2.0 oder höher zur Verfügung steht, können Sie auch MessyDOS
verwenden (gibt's im Aminet).
Hier wird Ihnen nun Schritt für Schritt erklärt, wie Sie
per Diskette Software übertragen können:
i) Besorgen Sie sich eine 720KB PC-Diskette (Double Density [DD]).
Formatieren Sie diese entweder auf Ihrem PC, oder auf
dem Amiga mit Hilfe von CrossDOS.
ii) Erzeugen Sie mit obiger Methode entweder ein Kickstart-Image oder ein Disketten-Image.
iii) Archivieren Sie diese Datei mit Hilfe von LhA oder Zip (Stellen
Sie sicher, dass Sie diese Datei auf Ihrem PC
haben, so dass Sie sie auspacken können wenn Sie die Diskette
vom Amiga in den PC stecken).
iv) Kopieren Sie das Archiv mit Hilfe von CrossDOS oder MessyDOS auf die Diskette im Amiga.
v) Nehmen Sie die Diskette aus dem Amiga und stecken Sie sie in den
PC, kopieren Sie das Archiv auf die
Festplatte, und packen Sie es wieder aus. Kopieren Sie das Kickstart-ROM-Image
oder die ADF-Datei ins
Fellow-Verzeichnis und es kann losgehen!
Sie können sich, indem Sie den bzw. die Anfangsbuchstaben des Dateinamens eingeben, automatisch zu einer bestimmten Datei bewegen.
Es ist auch eine "Merker-Option" implementiert, die Sie dazu benutzen
können, sich einen Dateinamen zu merken und ihn dann später direkt
in ein Konfigurationsmenü einzufügen. Nähere Informationen
dazu finden Sie in der Shortcut-Liste für den Datei- Browser.
Falls der Emulator zeitweise angehalten wurde, bringt Sie diese Option wieder in den Emulations-Modus zurück.
Falls kein Kickstart-Image geladen wurde, wird durch einen Hard Reset
ein einfacher Spezial-Loader aufgerufen, der dazu
in der Lage ist, Programme zu laden, die nicht auf Datenaustausch mit
dem Amiga-OS angewiesen sind.
Dazu muss das Disk-Image, von dem Sie booten wollen, zuerst in DF0:
"eingelegt" werden. Einige Demos und Spiele mit
Track-Loadern gehören zu der Programmkategorie, mit denen dieser
Loader umgehen kann.
(ANMERKUNG: Diese Spezial-Loader-Option gibt es nur bei Fellow 0.3.2a
und früheren Versionen.)
Das Menü "Configuration" beinhaltet eine Anzahl Menüs, mit
welchen Sie das Systemverhalten des Emulators konfigurieren
können. Die verschiedenen Menüs werden im folgenden erklärt.
Dieses Menü bietet eine Anzahl von Einstellungen, die Disk-Images
und die Hardware-Emulation des Amiga-Floppy-
Laufwerks betreffen.
Durch Drücken der ENTF-Taste können Sie das "eingelegte" Disk-Image aus dem virtuellen Laufwerk "auswerfen".
Drücken Sie an dieser Stelle eine der Tastenkombinationen ALT-0
bis ALT-9, wird das jeweilige Disk-Image "eingelegt",
dessen Name auf einem dieser 10 Speicherplätze abgespeichert ist.
Disk-Images, die mit gzip oder bzip komprimiert sind, werden in das
Verzeichnis entpackt, das mittels TEMP- oder
TMP-Umgebungsvariable eingestellt wurde. Es sind keine Änderungen
an diesen komprimierten Images möglich..
(Nur unkomprimierte Images können verändert werden.)
Eigentlich ist dies dafür gedacht, um alte Demos lauffähig
zu machen, die mit schlecht programmierten Cruncher-Programmen gepackt
wurden. Im Normalfall lassen Sie die Laufwerke einfach alle aktiviert.
Wählbare Parameter sind "Original" (original) und "Fast" (schnell).
Beachten Sie bitte, dass ein paar Programme nicht starten werden, wenn
die Geschwindigkeit nicht auf "Original" eingestellt ist.
Dieses Menü beinhaltet eine Anzahl Einstellmöglichkeiten,
um Dateisysteme in Ihrer Konfiguration zu definieren und zu kontrollieren.
Ein Dateisystem ist eine festgelegte Stelle in Ihrem realen Dateisystem
(auf Ihrer Festplatte), welches dann
im Emulator als Gerät (Device) erscheint.
Geben Sie, wenn sie diese Option auswählen, zuerst den Datenträgernamen an, unter dem dieses Dateisystem nachher dem Amiga bekannt sein soll, dann den Mountpoint im realen Dateisystem. Die dritte Option legt die maximale zulässige Dateinamenlänge vor der Umwandlung in lange Dateinamen fest. Normalerweise braucht die Standardeinstellung dieser Option nicht geändert zu werden..
Dieses Untermenü bestimmt Parameter, die mit der Grafikemulation
und der visuellen Darstellung auf dem Amiga-
Bildschirm zu tun haben.
800x600x16 bit Farbtiefe |
800x600x15 bit Farbtiefe |
640x480x16 bit Farbtiefe |
640x480x15 bit Farbtiefe |
640x400x16 bit Farbtiefe |
640x400x15 bit Farbtiefe |
640x350x16 bit Farbtiefe |
640x350x15 bit Farbtiefe |
400x300x16 bit Farbtiefe |
400x300x15 bit Farbtiefe |
400x300x8 bit Farbtiefe |
320x480x16 bit Farbtiefe |
320x480x15 bit Farbtiefe |
320x480x8 bit Farbtiefe |
320x400x16 bit Farbtiefe |
320x400x15 bit Farbtiefe |
320x400x8 bit Farbtiefe |
320x240x16 bit Farbtiefe |
320x240x15 bit Farbtiefe |
320x240x8 bit Farbtiefe |
320x200x16 bit Farbtiefe |
320x200x15 bit Farbtiefe |
320x200x8 bit F. (Std. VGA) |
Werden bei einer Auflösung sowohl die 15- als auch die 16bit-Variante
gefunden, wählt der Emulator nur eine davon aus.
Normalerweise unterstützen eigentlich alle Karten die Standard-VGA-Auflösung
320x200x8. Fehlt der VESA-Treiber,
oder unterstützt dieser nicht die übrigen Auflösungen,
ist nur die 320x200x8-Auflösung anwählbar.
ANMERKUNG:
Die Nicht-VGA-Auflösungen können nur dann gewählt werden,
wenn der VESA-Treiber den "Linear Framebuffer"-Modus unterstützt.
Der Emulator überwacht das Erscheinungsbild des gesamten Amiga-Grafikplayfields,
dessen Größe etwa 768x520 Pixel
umfasst. Viele der unterstützten Auflösungen sind nicht hoch
genug, um ein Bild dieser Größe darstellen zu können.
Um dennoch auf den Emulator-Bildschirm zu passen, wird es etwas abgeschnitten.
Bei niedrigen Auflösungen werden Grafiken in hoher Auflösung entsprechend konvertiert: zulasten der Bildqualität,
da jeder zweite Pixel verlorengeht.
Niedrigere Übersprungraten haben ruckelige Animationen zur Folge
- sparen andererseits aber eine Menge an Zeit ein,
die dann wieder für andere Bereiche der Emulation verwendet werden
kann.
Im allgemeinen ist die Einstellung der "Frame-Skip-Ratio" diejenige
Einstellung, auf die das Augenmerk an erster Stelle
gerichtet ist, wenn eine Feineinstellung am Emulator vorgenommen wird.
Sie können zwischen "Unlimited" (unbegrenzt), "50 Hz" und "Synch
with VGA-card" (Synchronisation mit Grafikkarte)
wählen.
"Unlimited" setzt alles Timing außer Kraft, und erlaubt dem Emulator,
so schnell als irgend möglich zu laufen. Das betrifft
einerseits auch die Wiederholrate der Tasten, genauso wie es das Timing-Konzept
im Emulator zunichte macht.
Es kann vorkommen, daß sie die Tastatur überhaupt nicht
benutzen können, wenn Ihr "Amiga" zu schnell läuft.
"50 Hz" begrenzt die Geschwindigkeit auf die eines Standard-Amiga 500 mit PAL-Monitor.
"Synch with VGA-card" versucht, es das Display mit der Refresh-Rate
der Grafikkarte zu synchronisieren.
In einigen Fällen ermöglicht es dadurch absolut butterweiche
Animationen. Da aber die normale PAL-Refreshrate nicht
unbedingt gleich der des VGA-Modus sein muss, bringt dies oft sowohl
die Sound-Abspielgeschwindigkeit als auch die
Gesamtgeschwindigkeit der Anwendung völlig durcheinander.
ANMERKUNG:
Wenn Sie die Sound-Emulation auf "Synchronized with emulation" eingestellt
haben, wird diese Einstellung ignoriert -
es sei denn, Sie haben "Synch with VGA-Card" eingestellt, welche selbst
mit
Sound
benutzt wird.
Berücksichtigen Sie jedoch bitte, dass die Kombination "Synch
mit VGA-Card" und Sound nicht sehr sinnvoll ist.
ANMERKUNG 1:
Der Gedanke, diese Option permanent aktiviert zu lassen, führt
wohl in eine Sackgasse. Sie braucht noch mehr Feinab- stimmung, und es
ist mehr Arbeit nötig, damit sie korrekt und stabil läuft. Empfohlen
ist es, die Option dann anzuschalten,
wenn man einen besonderen Effekt beobachten möchte.
ANMERKUNG 2:
Bei Fellow v0.3.4 ist diese Option in der grafischen Benutzeroberfläche nicht
mehr anwählbar..
Für die experimentierfreudigen Anwender ist sie nach wie vor als
Kommandozeilen-Option enthalten.
Zur Verfügung stehen Ihnen 3 Optionen: "No Scaling" (keine vertikale
Skalierung), "Hardware VGA Line Doubling"
(vertikale Verdoppelung der Zeilen mittels Hardware [Grafikkarte])
sowie "Insert black lines" (füge schwarze Zwischen-
zeilen ein).
"Hardware VGA Line Doubling" macht von einigen Speicherregistern der
Grafikkarte Gebrauch, um doppelte Scanlinien
in der Hardware zu erzeugen. HVLD funktioniert nur dann, wenn Sie eine
VGA-Register-kompatible Grafikkarte besitzen,
die auch im SVGA-Modus hardwareseitige Anfragen der VGA-Register verarbeiten
kann. (Nicht alle können das.)
"Insert black lines" ist eine rein softwaretechnische Methode, die schwarze
Zeilen ins Bild einfügt, um das Amiga-Display
mit einem korrekteren Bildverhältnis darzustellen.
Dieses Untermenü legt fest, welchen Speichertyp und wieviel Speicher
der emulierte Amiga zur Verfügung hat.
Diese Dateien müssen die Dateierweiterung ".ROM" haben;
sie können aber auch zusätzlich eine "Kickdisk" im ADF-
Format verwenden. (damals bekannt durch die des Amiga 1000)
Der Emulator findet automatisch heraus, in welchen Speicherbereich das
ROM geladen werden muss. Bei ROM-Images,
dessen Startadresse $F00000 ist, kann ein zweites ROM-File
mittels der Kommandozeilenoption -r2 an die Adresse
$F80000 oder $FC0000 geladen werden. Beispielsweise, wenn man
die Boot-Animation von CDTV anschauen möchte,
ist diese Option sehr nützlich. (Allerdings wird die Hardware,
die zum eigentlichen Booten von CDTV benötigt wird,
nicht emuliert.)
Dieses Untermenü ist für die soundtechnischen Angelegenheiten zuständig.
Die Option[en], die nur dann zur Verfügung steht [stehen], wenn
eine Soundkarte (Soundblaster) gefunden wurde,
ist [sind]:
"Normal" (bei Fellow 0.3.4)
"Normal, synchronized with emulation" (normal, mit Emulation synchronisiert)
(bei Fellow 0.3.3)
"Normal, synchronized with emulation" und
"Normal, synchronized with real-time" (normal, mit Echtzeit-Synchronisation)
(bei Fellow 0.3.2a und älter)
Hinter diesen merkwürdig anmutenden Namen verbergen sich zwei [bei 0.3.3: eine] Timing-Methode[n] für Soundwieder- gabe.
"Normal" (bei Fellow 0.3.4) bzw. "Normal, synchronized mit emulation" (bei Fellow 0.3.3 und älter ) stimmt die Sample-Erzeugung
auf die Abarbeitungsgeschwindigkeit der Emulation genau ab. Läuft die Emulation zu langsam, gibt es "schwarze
Löcher" oder Aussetzer bei der Soundwiedergabe.
Auf richtig schnellen PCs sorgt diese Methode allerdings für eine
gute Soundwiedergabe.
[Der folgende Text betrifft nur die Versionen Fellow 0.3.2a und älter.]
"Normal, synchronized with real-time" spaltet die Soundemulation von
der übrigen Emulation völlig ab, wobei diese
Methode
sicherstellt, dass immer genug Samples vorhanden sind, um eine flüssige
Soundwiedergabe zu gewährleisten.
Das Üble wiederum daran
ist, dass Sie ziemlich wahrscheinlich Tempoverzerrungen bekommen. Tja - von so einem
langsamen Rechner können Sie nun ja nicht alles erwarten. Ein zweiter Nachteil ist, dass diese
Timing-Methode auf einem PC mit Pentium II nicht so gut funktioniert
- ist jedoch kein derart großer Nachteil, da Sie ja die Methode "synchronized
with emulation" verwenden können, die erfahrungsgemäß auf
diesen PCs sehr gute Resultate liefert.
[Anm. d. Übers.: Ich rate Ihnen, sofern Sie Fellow 0.3.2a und älter unter Windows verwenden, strikt von dieser Methode der
Echtzeit-Synchronisation
ab, da Fellow hier oft völlig verrückt spielt! Allerdings läuft diese unter reinem DOS problemlos.]
NOTE:
Nicht alle Soundkarten unterstützen alle möglichen Einstellungen
bei der Soundausgabe. Haben Sie eine für Ihre Karte
unzulässige Einstellung gewählt, erzwingt der Emulator beim
Start wieder die Minimaleinstellungen. Allerdings stehen Ihnen mit der
Option "Emulated, no playback" (emuliert, aber nicht wiedergegeben)
alle Einstellungen zur Verfügung,
damit Sie auch dort die Möglichkeit haben, Sound mit beliebiger Qualität
als WAV-File abzuspeichern.
ANMERKUNG bezüglich Performance:
Die Einstellung "44100 Hz" ist unnötig und für die CPU ein
extremer "Klotz am Bein". Ein guter Kompromiss zwischen
Geschwindigkeit und Qualität ist 31300 Hz.
Mono oder Stereo bzw. 8 oder 16 bit machen, was die Geschwindigkeit
angeht, nur einen kleinen Teil aus.
Dieses Untermenü befasst sich mit Einstellungen, die mit der CPU- und Blitteremulation zu tun haben.
Sie können zwischen "3.5 MHz", "7 MHz", "14 MHz" und "28 MHz" auswählen.
Diese Clock-Werte werden relativ,
vom Timing des Standard-A500 (7 MHz, 68000er) ausgehend, errechnet
und müssen nicht unbedingt ein Pendant in
der realen CPU-Welt haben. (Das ist eben so eines der Dinge, die man
mit Emulation anstellen kann :))
"Normal OCS Speed" versucht, das Verhalten des [emulierten] Blitters dem eines echten OCS-Blitters möglichst original- getreu anzugleichen - mit Rücksichtnahme auf die Geschwindigkeit. Durch diese Einstellung benötigen Blits Zeit, und vermutlich werden es die meisten Programme genauso wollen.
"Finish instantly" stellt hingegen einen Blitter zur Verfügung,
der den Anschein hat, quasi keine Zeit zu benötigen, um seine
Berechnungen zu vollenden. In einigen Fällen kann dies dazu führen,
dass der Emulator mit Blitterberechnungen "bombar-
diert" wird, und die Echtzeit-Performance dann entsprechend rapide
nach unten geht. Jedoch kann es auch Gutes bei Programmen bewirken, die
mit Synchronisationsproblemen des Puffers zu kämpfen haben, z. B.
wenn deutlich sichtbare Rißlinien bei Vektor- oder bewegten Grafiken
in Erscheinung treten, welche dann wie "halb gezeichnet" aussehen, wenn
das Amiga-Programm sie darstellt.
Dieses Untermenü befasst sich mit Hardfiles.
Ein Hardfile ist eine Möglichkeit, Massenspeicher dem emulierten
Amiga zur Verfügung zu stellen. Das Hardfile ist eine
riesige Datei die als eine "Festplatte" verwendet wird. Das Hardfile
kann beliebig gross sein.
Hardfiles können nur dann verwendet werden, wenn sie ein Kickstart in der Version 2.0 oder höher besitzen.
Vergessen Sie nicht, ein neues Hardfile erst zu formatieren.
Sie können von jedem Hardfile booten.
Hardfiles haben eine niedrigere Boot-Priorität als DF0:, aber
eine höhere als DF1:.
Sie können auch unkomprimierte ADF-Dateien anstelle von echten Hardfiles verwenden.
Die Hardfile-Devices beim "Amiga" heißen FELLOWx: (erstes Hardfile: x=0, zweites: x=1 usw.)
ANMERKUNG: Ein Ändern der Hardfile-Einstellungen erzwingt
automatisch einen Hard Reset des emulierten Amiga.
In diesem Menü sind Optionen zusammengestellt, die woanders nicht
hereingepasst hätten.
Mögliche Einstellungen sind:
"Disabled" (deaktiviert)
"Mouse" (Maus)
"Analog Joystick" (analoger Joystick)
"Keyboard Joystick Replacement 1" (Joystickemulation durch Tastatur,
Typ
A)
"Keyboard Joystick Replacement 2" (Joystickemulation durch Tastatur,
Typ
B)
Der Joystick kann wie folgt durch die Tastatur emuliert werden:
Typ A: Pfeiltasten mit der rechten Strg-Taste als Feuerknopf 1 und der AltGr-Taste als Feuerknopf 2.
Typ B: 'D' = links, 'G' = rechts, 'R' = hoch, 'F' = runter, linke
Strg-Taste
ist Feuerknopf 1 und Alt-Taste ist Feuerknopf 2.
Die Handhabung des analogen Joysticks ist ganz schön umständlich.
Um den Joystick zu kalibrieren, bewegen Sie
ihn während der Emulation einmal im Kreis.
Sollte Ihnen die Funktionalität des eingebauten Analog-Joysticks
nicht ausreichen, bietet Ihnen das Joyemu-Utility [DOS]
eine weit bessere Handhabung des Analog-Joysticks.
(Suchen Sie im Internet mit einer geeigneten Suchmaschine danach.)
Es ist auch Unterstützung für ein "LED-Board" vorhanden (danke
an Roman Dolejsi).
Schauen Sie dazu in ledboard_deutsch.txt ([OEM Version] bzw. [ANSI Version])
nach.
Die Einstellung "Keyboard LED order" dient dazu, dem Emulator die Reihenfolge
der LEDs auf Ihrer Tastatur mitzuteilen.
Diese Zahl liefert nur ungefähre Werte.
Um es gleich vorwegzunehmen: ein "normaler" Anwender wird wahrscheinlich
nie irgendeinen Nutzen am Debugger finden -
also, wenn Ihnen das hier Gesagte unverständlich erscheint, überspringen
Sie dieses Kapitel einfach.
Der Debugger ist eine einfache Umgebung, mit der Sie u. a. den momentanen
Status des emulierten Amiga abfragen können.
Er beinhaltet einen einfachen Disassembler, der den Code in der Nähe
des Programm-Counter und den Status des emulier-
ten Motorola 680x0-Prozessors anzeigt. Die CPU kann im Einzelschritt-Verfahren
(single step) oder bis zum Erreichen eines bestimmten Abbruchpunktes
(Breakpoint) betrieben werden. Es kann der Speicher und einige der
Register in den Amiga-
Customchips eingesehen werden. Möglich ist es auch, Ausnahmen
(Exceptions) und IRQs sowie Prozessorbefehle auf-
zuzeichnen (Logging), sofern diese Optionen beim Erstellen von
FELLOW.EXE mit einkompiliert wurden. (*)
Im Normalfall müssen Sie den Emulator selbst kompilieren, um
die Logging-Optionen im Debugger verfügbar zu machen.
Kommandozeilenoptionen (Verschiedenes): | |
-h | listet Gesamtübersicht der Kommandozeilenoptionen auf |
-log | Erzeugt Logfile "fellow.log" beim Initialisieren des Emulators. Benutzen Sie sie, um festzustellen, welche Daten der Emulator über ihre Hardware erhalten hat. (Standardmäßig: Kein Logging) |
-nogui | Fellow ohne grafische Startoberfläche starten |
-f12exit | mit F12 den Emulator ganz verlassen (Standardeinstellung:
Fellow kehrt zur Start-Benutzeroberfläche zurück) |
-config <datei> | Konfigurationsdatei <datei> verwenden (Standardeinstellung: "fellow.cfg" verwenden) |
-ns | Keine Einstellungen beim Verlassen des Emulators
speichern
(Standardeinstellung: Einstellungen speichern) |
-nommx | Keine MMX-Instruktionen verwenden, selbst wenn
MMX-Befehlssatz vorhanden ist (Standardeinstellung:
MMX verwenden, wenn es erkannt wurde) |
-p on | off | Geschwindigkeitsmessung am Bildschirm anzeigen (Standard: abgeschaltet) |
-l scr|kb?|lp?|lp?m|off | Festlegung, wo LEDs angezeigt werden:
scr - direkt am Bildschirm
lp1/2/3 - am Hardware-LED-Board (Parallelport)
|
-lk ncs | nsc ... | LEDs auf PC-Tastatur in spezieller Reihenfolge
verwenden:
(N = Num Lock, C = Feststelltaste, S = Scroll Lock) |
Kommandozeilenoptionen für Disketten: | |
-0 <datei> | Disk-Image <datei> in DF0: verwenden (Standard: Kein Disk-Image) |
-1 <datei> | Disk-Image <datei> in DF1: verwenden (Standard: Kein Disk-Image) |
-2 <datei> | Disk-Image <datei> in DF2: verwenden (Standard: Kein Disk-Image) |
-3 <datei> | Disk-Image <datei> in DF3: verwenden (Standard: Kein Disk-Image) |
-0e +|- | DF0: aktivieren (+)/ deaktivieren (-) (Standard: Aktiviert) |
-1e +|- | DF1: aktivieren (+)/ deaktivieren (-) (Standard: Aktiviert) |
-2e +|- | DF2: aktivieren (+)/ deaktivieren (-) (Standard: Aktiviert) |
-3e +|- | DF3: aktivieren (+)/ deaktivieren (-) (Standard: Aktiviert) |
-ds +|- | Schnellen Floppy-Zugriff aktivieren (Standard: langsamer [=originaler] Floppy-Zugriff) |
-dmX <datei> | Speicherinhalt X (X=0..9) des File-Requesters |
-dpath <verzeichnis/datei> | aktives Element im File-Requester festlegen |
Kommandozeilenoptionen für Hardfiles: | |
-hfX <datei> | Datei <datei> als Hardfile Nr. X verwenden, wobei X eine Ziffer zwischen 0 und 9 ist. (Standard: Keine Hardfile) |
-he +|- | Hardfile-Device aktivieren (+) oder deaktivieren
(-).
(Standardmäßig ist es aktiviert, wenn Kickstart 2.0 oder höher verwendet wird) |
Kommandozeilenoptionen für Speicher: | |
-c <cgröße> | Chip-Memory der Größe <cgröße>
(in Kilobyte) setzen, wobei <cgröße> entweder 256, 512, 768,
1024, 1280,
1536, 1792 oder 2048 sein kann. (2048 KB ist Standard) |
-fm <fgröße> | Fast-Memory der Größe <fgröße>
(in Megabyte) setzen, wobei <fgröße> entweder Werte von 0,
1, 2, 4 oder 8 MB
annehmen kann. (Standard: kein Fast-Memory [0 MB]) |
-b <bgröße> | "Bogo-Memory" (s. o.) der Größe <bgröße> (in Kilobyte) setzen, wobei <bgröße> Werte von 0, 256, 512, 1024, 1280, 1536 oder 1792 KB annehmen kann. (Standard: kein Bogo-Memory [0 KB]) |
-r <kick> | Datei <kick> entweder als Kickstart-Image oder Kickdisk verwenden. (Standarddatei: kick.rom) |
-ms <24 | 32> | Speicherbusbreite von 24 oder 32 Bit setzen (Standard: 24bit) |
-r2 <kick2> | Datei <kick2> entweder als zweites Kickstart-Image oder zweite Kickdisk verwenden. (standardmäßig: kein zweites Kickstart-Image) |
-K <keydatei> | Datei <keydatei> als Key-Datei für codierte Kickstart-Images verwenden. (Standard: rom.key) |
Kommandozeilenoptionen für die Gameports: | |
-j1 n|a|m|k1|k2 | Hardware-Typ in Gameport 1 bestimmen:
n - keine Hardware (Gameport 1 deaktiviert) a - analoger Joystick m - Maus k1 - Joystickemulation durch Tastatur (Typ A) k2 - Joystickemulation durch Tastatur (Typ B) (Standard: 'm' [Maus]) |
-j2 n|a|m|k1|k2 | Hardware-Typ in Gameport 2 bestimmen:
n - keine Hardware (Gameport 2 deaktiviert) a - analoger Joystick m - Maus k1 - Joystickemulation durch Tastatur (Typ A) k2 - Joystickemulation durch Tastatur (Typ B) (Standard: 'n' [keine Hardware]) |
Kommandozeilenoptionen für Sound: | |
-s d|n|c|e | Art der Soundemulation bestimmen:
d - deaktiviert n - Normal, mit Emulation synchronisiert c - Normal, Echtzeit-Synchronisation (diese Option gibt es nur bei Fellow 0.3.2a und älter) e - emuliert, keine Soundwiedergabe (Standardeinstellung: 'd' (deaktiviert)) |
-sf <freq> | Soundausgabe-Frequenz in Hz, wobei bei <freq>
zwischen 15650, 22050, 31300 oder 44100 Hz (nicht empfohlen)
gewählt werden kann. (Standard: 15650 Hz) |
-ss on|off | Stereo-Wiedergabe an/aus (Standard: aus) |
-sb <bit> | Bitrate der Soundwiedergabe (8 oder 16 bit, Standard: 8 bit) |
-sd <50Hz-Frame> | Sound-Puffer-Tiefe in Millisekunden, von 1 -
9 wählbar.
(Standard: '5')) |
-sw +|- | Senden der Soundausgabe an eine WAV-Datei aktivieren/ deaktivieren (Standard: deaktiviert) |
-sl 0|1|2 | Verwendung des Tiefpassfilters:
0 - Original 1 - Immer 2 - Nie (Standard: Original) |
-s1 | Verwendung der Soundblaster (V1.0)-Routinen erzwingen |
Kommandozeilenoptionen für Bildschirm & Grafik: |
|
-res 800600 | 640480 | 640400 | 640350 | 400300 | 400300b | 320480 | 320480b | 320400 | 320400b | 320240 | 320240b | 320200 | 320200b | Auflösung des emulierten Amiga einstellen
(Standard:
800600, sonst 320200b [ohne VESA]) |
-fl none|50|vga | Frame-Timing-Methode (keine / 50Hz / Grafikkarte) |
-f <zahl> | Verhältnis beim Überspringen von Bild-Frames
(1/zahl)
(Standard: keine Frames überspringen [1/1]) |
-i on|off | "Flickerfixer" in 800x600er Auflösung (Standard: aus) |
-gc on|off | Zyklen-genaues Zeichnen bei 800x600 (Standard: aus) |
-y n|h|b | vertikale Skalierung einstellen:
n - keine Skalierung h - Skalierung unter Verwendung der Grafikkarte b - Einfügen von schwarzen Zeilen ins Bild |
Kommandozeilenoptionen für CPU/Prozessor: | |
-cpu 0 | 1 | 2 | 3 | Prozessortyp 680x0 (x = 0, 1, 2, 3) (Standard: 68000er) |
-cs 3.5 | 7 | 14 | 28 | Taktfrequenz der CPU-Clock in MHz (Standard: 7 MHz) |
Falls dies eine Workbench-Diskette sein sollte, stellen Sie sicher,
dass Sie aus Ihrem Kickstart-ROM eine Datei erzeugt,
diese im Fellow-Verzeichnis platziert und ihr entweder den Namen "kick.rom"
gegeben oder im Konfigurationsmenü ein
anderes Verzeichis angegeben haben.
Wurde das Kickstart-Image nicht gefunden, versucht Fellow die Standard-Bootstrap-Routinen
des Amiga zu umgehen und
trotzdem zu booten. Bei einigen Demos und Spielen klappt das auch,
und zwar bei denen, die die Kickstart-Routinen igno-
rieren und alles selbst "in die Hand nehmen". Es kann vorkommen, dass
Sie "RESET" aufrufen müssen, um dies nach
"Einlegen" eines Disk-Images zu aktivieren.
Legen Sie fest, wieviel RAM Sie verwenden möchten, stellen Sie
die Soundemulation passend zu Ihrer Sound-Hardware ein,
und rufen Sie aus dem Hauptmenü "RUN" auf.
Wenn alles "paletti" ist, sollte Fellow ohne irgendwelche Sperenzchen
zu machen, Ihr Disk-Image booten!
Tastenkombination: | Beschreibung: |
Alt-X, Strg-Q | Emulator verlassen |
F1 | Menü "Configuration" |
F3 | Menü "Utilities" |
F5 | Hard-Reset |
F7 | Debugger-Menü |
F9 | "Start" (Emulation starten) |
F11 | "About" (Informationen über das Fellow-Projekt) |
Alt-D | "Disk-Image"-Menü |
Alt-F | "Filesystem"-Menü |
Alt-M | "Memory"-Menü |
Alt-O | "Sound"-Menü |
Alt-C | "CPU and Blitter"-Menü |
Alt-H | "Hardfile"-Konfigurationsmenü |
Alt-V | "Various"-Menü (Verschiedenes) |
Alt-A | "Add VFS Filesystem" (VFS-Dateisystem hinzufügen) |
Alt-R | "Remove Filesystem" (VFS-Dateisystem entfernen) |
Tastenkombination: | Beschreibung: |
F12 | zum Menüsystem zurückkehren und dabei die Emulation unterbrechen (mit "Start" kann die Emulation wieder fortgesetzt werden!) |
Pos1-Bild auf | zur nächsten verfügbaren Bildschirmauflösung umschalten |
Pos1-Bild ab | zur vorherigen verfügbaren Bildschirmauflösung umschalten |
Ende-Bild auf | Nächste Skalierungsmethode verwenden |
Ende-Bild ab | Vorherige Skalierungsmethode verwenden |
Pos1-"8"/nach oben [Zehnertastatur]) | Virtuelles Amiga-Playfield nach oben scrollen |
Pos1-"4"/nach links [Zehnertastatur]) | Virtuelles Amiga-Playfield nach links scrollen |
Pos1-"6"/nach rechts [Zehnertastatur]) | Virtuelles Amiga-Playfield nach rechts scrollen |
Pos1-"2"/nach unten [Zehnertastatur]) | Virtuelles Amiga-Playfield nach unten scrollen |
Pos1-F11 | Gesamten aktuellen Bildschirminhalt als BMP-Datei abspeichern |
Pos1-F1 | Disk-Image in DF0: "einlegen" |
Pos1-F2 | Disk-Image in DF1: "einlegen" |
Pos1-F3 | Disk-Image in DF2: "einlegen" |
Pos1-F4 | Disk-Image in DF3: "einlegen" |
Ende-F1 | Disk-Image aus DF0: "auswerfen" |
Ende-F2 | Disk-Image aus DF1: "auswerfen" |
Ende-F3 | Disk-Image aus DF2: "auswerfen" |
Ende-F4 | Disk-Image aus DF3: "auswerfen" |
Beachten Sie bitte, dass E-Mails, die Fragen wie "Wann kommt die nächste
Version raus?" oder "Was ist in der nächsten
Version enthalten?" - sowie Anwendersupport bei dokumentierten Funktionen
- umfassen, in der Regel ignoriert werden.
Dies betrifft auch Dinge, über die sich die Anwender im Normalfall
ganz einfach - über andere Wege - selbst informieren sollten, z. B.
wie man einen Amiga bedient oder technische Dinge, z. B. wie man Daten
vom Amiga zum PC überträgt.
Meine Postadresse (der etwas unmoderne Weg :)):
Petter Schau
Ravnkollbakken 83
N-0971 Oslo
Norwegen
In der "Credits"-Datei finden Sie die E-Mail-Adressen der anderen Personen, die zu Fellow beigetragen haben.
[Noch eine Anm. von mir [dem Übersetzer] :
Ich nehme natürlich an, dass weder Petter
Schau noch Brett Eden (s. u.) deutsch sprechen, deswegen sollten Sie, falls
Sie etwas zu Fellow äußern wollen, besser auf einen der deutschen
Fellow-"Mitarbeiter" zurückgreifen.]
Den Grundstein zu diesem Dokument legte Brett Eden. Es
wurde zuletzt von Petter Schau am 6.6.1999 aktualisiert. Wenden Sie
sich bei allen
Noch ein paar Anmerkungen zum Schluss :
- Was hat mich eigentlich dazu bewogen, dieses Dokument
neu aufzusetzen?
Nun, ich wusste ja, dass es bereits von Christian
Schaefers eine deutsche Anleitung gab, diese war mir allerdings im
Laufe der Zeit etwas
Fragen, Kommentaren oder Vorschlägen an Brett Eden
unter revere@sub.net.au.
zu sehr "out of date" - schliesslich war sie seit Fellow
0.3.2a nicht mehr aktualisiert worden. Ausserdem wollte ich einerseits
nicht mehr diese
mir etwas zu wenig distanziert erscheinende "Du"-Anrede verwenden,
andererseits wollte ich eine Dokumentation in HTML-Format erstellen,
da es heutzutage auch hervorragende DOS-HTML-Browser gibt, die z. T. sogar
Freeware sind (z. B. Arachne).
Somit verwendete ich viel Zeit (im Zeitraum von 10 Wochen
ungefähr zusammengerechnet 2 volle Wochen), um - peu à peu - eine einigermassen
passable deutsche Übersetzung auf die Beine zu stellen. Es stellte sich heraus, dass das gar nicht
so einfach war, wie es zu Anfang schien: es kann
ganz schön knifflig sein, Englisch von einem "native speaker" zu übersetzen.
einem Amiga500
mit 1 MB RAM und nur einem Laufwerk, also genau die Konfiguration, die
ich auch benutze, sowie ein paar Links) - dies aber eher
sporadisch, also
keine unnötigen Dinge "hinzugedichtet", die Petter Schau bzw. Brett Eden
auch nicht geschrieben hätten.
So wünsche ich Ihnen viel Spaß mit FELLOW
- dem Amiga-Emulator für DOS (und vielleicht bald schon für
Win32).
Andreas Eibach, im
November 1999
Letzte Änderung : Freitag, 4. Februar 2000.