forked from pete-gordon/oricutron
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReadMe-LiesMich_DE.txt
452 lines (315 loc) · 17.7 KB
/
ReadMe-LiesMich_DE.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
Oricutron 1.2
-------------
(c)2009-2014 Peter Gordon ([email protected])
This is a work in progress.
Aktueller status
==============
6502: 100% fertig (außer einigen unbekannten Fehlern :)
VIA: 95% fertig.
AY: 99% fertig.
Video: 100% fertig
Tape: 99% fertig (.TAP, .ORT und .WAV werden unterstützt)
Disk: Sektoren Lesen/Schreiben funktioniert. Lesen/Schreiben der Tracks geht nicht.
Credits
=======
Programmierung
-----------
Peter Gordon
Zusätzliche Programmierung
--------------------------
Francois Revol
Alexandre Devert
Stefan Haubenthal
Ibisum
Kamel Biskri
Iss
Christian from defence-force forum
Amiga & Windows Portierungen
----------------------------
Peter Gordon
BeOS/Haiku Portierung
---------------------
Francois Revol
macOS Portierung
----------------
Francois Revol
Kamel Biskri
Patrice Torguet
MorphOS & AROS Portierungen
---------------------------
Stefan Haubenthal
Linux Portierung
----------------
Francois Revol
Ibisum
Alexandre Devert
Pandora Portierung
------------------
Ibisum
ACIA & Pravetz Disk-Unterstützung
---------------------------------
Iss
CH376 Unterstützung
-------------------
Offset (cpc) & Jede
Danksagung
==========
Danke an DBug und Twilighte, dass sie mich ihre Demos und Spiele mit Oricutron zusammen verteilen lassen.
Danke an DBug, Twilighte, Chema, kamelito, Yicker, JamesD, Algarbi, ibisum,
jede, thrust26 und alle anderen für Ihre Hilfe und Ihr Feedback!
AVI export notes
================
Der AVI Export nutzt den MRLE Codec. Vielleicht unterstützt dein Spieler der Wahl diesen nicht, aber MPlayer spielt ihn, ffmpeg konvertiert es, sodass du es direkt nach Youtube laden kannst.
Beachte, dass der MRLE Codec bei dem Amiga OS4 Port des MPlayer ein paar Probleme mit Endian hat, sodass der Ton irgendwie schrottig rüberkommt und falsche Farben hat bis das im MPLayer behoben ist. :-(
Kommandozeile
=============
Sie können bestimmte Optionen auf der Befehlszeile angeben. Alle Optionen haben
sowohl kurze als auch lange Versionen. Zum Beispiel:
-mblah
oder
--machine blah
ist dasselbe. Beachte, dass die Kurzversion kein Leerzeichen, die Lange aber schon eins hat.
Hier sind alle Optionen:
-m / --machine = Lege Systemtyp fest. Diese sind:
"atmos" oder "a" für Oric atmos
"oric1" oder "1" für Oric-1
"o16k" für Oric-1 16k
"telestrat" oder "t" für Telestrat
"pravetz", "pravetz8d" oder "p" für Pravetz 8D
-d / --disk = Wähle ein Disk Image zur Nutzung in Laufwerk 0
-t / --tape = Wähle ein Tape Image
-k / --drive = Wähle einen Disk Drive Controller. Diese sind:
"microdisc" oder "m" für Microdisc
"jasmin" oder "j" für Jasmin
"bd500" oder "b" für ByteDrive BD-500
"pravetz" oder "p" für Pravetz-8D FDC
-s / --symbols = Lade Symbole aus einer Datei
-f / --fullscreen = Starte Oricutron im Vollbild-Modus
-w / --window = Starte Oricutron in einem Fenster
-R / --rendermode = Rendermodus. Diese sind:
"soft" Software rendering
"opengl" OpenGL
-b / --debug = Start Oricutron im Debugger
-r / --breakpoint = Setze einen Breakpoint (Siehe Hinweis 2)
-h / --help = Aktiviere Kommandozeilen-Hilfe und Programm beenden
--turbotape on|off = Aktiviere oder deaktiviere Turbotape
--lightpen on|off = Aktiviere oder deaktiviere Lichtgriffel
--vsynchack on|off = Aktiviere oder deaktiviere VSync hack
--scanlines on|off = Aktiviere oder deaktiviere Scanline Simulation
--serial_address N = Setze die Adresse der seriellen Karte auf N (default ist $31C)
N liegt dezimal oder hexadezimal innerhalb des Bereiches $31c..$3fc
(i.e. 796, 0x31c, $31C repräsentiert den gleichen Wert)
--serial <type> = Set serial card back-end emulation:
'none' - keine serielle Karte
'loopback' - zum Testen - alle TX Daten werden an RX zurück gegeben
'modem[:port]' - emuliert einen Com-Port mit angeschlossenem Modem, nur wenige AT Kommandos werden unterstützt und Daten werden an TCP umgeleitet. Default Port ist 23 (telnet)
'com:115200,8,N,1,<device>' - nutzt reale oder virtuelle <device> beim Host als emuliertes ACIA.
Baudrate, data bits, Parität und Stop bits können nach Bedarf verändert werden
Bsp.: Windows: 'com:115200,8,N,1,COM1'
Linux: 'com:19200,8,N,1,/dev/ttyS0'
'com:115200,8,N,1,/dev/ttyUSB0'
BEACHTE: Falls Sie nicht sicher sind, welchen Rechner oder welchen Laufwerkstyp ein Disk- oder Tapeimage benötigt, geben Sie den Dateinamen ohne weitere Optionen ein und Oricutron wird es selbst versuchen.
Beachte 2: Listen mit vielen Breakpoints können von der Kommandozeile geladen werden. Nutze die standardmässigen Schalter -r oder --breakpoint,
aber anstelle einer Adresse gebe Präfixe für die Dateinamen mit ':' an. Die Datei ist eine Textdatei, die notwendige Breakpoint-Adressen enthält - eine pro Zeile, mit der selben Syntax wie am Monitor. Breakpoints können mit absoluten Adressen oder mit Symbolen (-s oder --symbols) geladen werden.
Beispiele:
oricutron tapes/tape_image.tap
oricutron disks/disk_image.dsk
oricutron --machine atmos --tape "tape files/foo.tap" --symbols "my files/symbols"
oricutron -m1 -tBUILD/foo.tap -sBUILD/symbols -b
oricutron --drive microdisc --disk demos/barbitoric.dsk --fullscreen
oricutron -ddemos/barbitoric.dsk -f
oricutron --turbotape off tapes/hobbit.tap
oricutron -s myproject.sym -r :myprojectbp.txt
Schlüssel
=========
Im Emulator
-----------
F1 - Zeigt Menü
F2 - Gehe zum Debugger/Monitor
F3 - Reset (NMI)
F4 - Harter Reset
Shift+F4 - Jasmin Reset
F5 - Schalte FPS um
F6 - Toggle warp speed
F7 - Speichere alle veränderten Disks
Shift+F7 - Speichere alle veränderten Disks in neuen Disk Images
F8 - Toggle Vollbild
F9 - Speichere Kassettenausgabe
F10 - Start/Stop AVI Aufnahme
F11 - Kopiere Bildschirm in Zwischenablage (BeOS, Linux & Windows)
F12 - Einfügen (BeOS, Linux & Windows)
Help - Zeige Hilfe (Amiga, MorphOS and AROS)
AltGr - Zusätzlicher Modifizierer
In Menüs
--------
Cursors - Navigiere
Enter - Führe Befehl aus
Backspace - Gehe zurück
Escape - Verlasse Menüs
(oder benutz die Maus)
Im Debugger/Monitor
-------------------
F1 - Gehe zum Menü
F2 - Zurück zum Emulator
F3 - Wechsle zwischen Konsole/Debug Ausgabe/Speicherbeobachtung
F4 - Wechsle zwischen VIA/AY/Disk-Information
F9 - Setze Zyklus-Zählung neu
F10 - Step over code
F11 - Step over code ohne Rückverfolgung in Unterroutinen.
F12 - Überspringe Instruktion
In der Konsole:
---------------
Up/Down - Befehls-Historie
In memwatch:
------------
Up/Down - Scrollen (+shift zum seitenweisen Scrollen)
Page Up/Page Down - Seite hoch/runter
Hex digits - Gebe Addresse ein
S - Toggle split mode
Tab - Bringe Fenster in split mode
Monitor Instruktionen
=====================
Im Monitor sind numerische Argumente standardmäßig dezimal, oder haben ein vorangestelltes $ für hex oder % für binär. Fast alles wird in hex ausgegeben.
Fast immer, wenn eine Zahl oder Adresse eingegeben werden kann, kann auch ein CPU- oder VIA-Register genommen werden. (VIA-Register sind Vordefiniert mit V, Z.B. VDDRA). Überall wo eine Adresse angegeben werden kann, kann auch ein Syymbol verwendet werden.
Befehle:
? - Hilfe
a <addr> - Assembliere
bc <bp id> - Leere Breakpoint
bcm <bp id> - Leere mem Breakpoint
bl - Liste Breakpoints auf
blm - List mem Breakpoints
bs <addr> [zc] - Setze Breakpoint
bsm <addr> [rwc] - Setze mem Breakpoint
bz - Zap Breakpoints
bzm - Zap mem Breakpoints
d <addr> - Disassembliere
fd <addr> <end> <file>- Disassembliere zu Datei
fw <addr> <len> <file>- Schreibe Speicher zu Datei
fr <addr> <file> - Lese Datei zu Speicher
m <addr> - Dump memory
mm <addr> <value> - Modifiziere Memory
mw <addr> - Beobachte Memory an addr
nl <file> - Lade Snapshot
ns <file> - Speichere Snapshot
r <reg> <val> - Setze <reg> zu <val>
q, x or qm - Beende Monitor
qe - Beende Emulator
sa <name> <addr> - Füge user symbol hinzu oder bewege es
sk <name> - Eliminiere user symbol
sc - Symbole nicht case-sensitive
sC - Symbole case-sensitive
sl <file> - Lade user symbols
sx <file> - Exportiere user symbols
sz - Zap user symbols
Breakpoints
===========
Es gibt zwei Arten von Breakpoints. "Normale" Breakpoints werden ausgelöst, wenn die CPU
im Begriff ist, eine Anweisung an der Breakpoint-Adresse auszuführen. "Speicher" Breakpoints.
auslösen, wenn auf die Breakpoint-Adresse zugegriffen oder diese geändert wird.
Normale Haltepunkte können 'z'- und/oder 'c'-Modifikatoren verwenden.
bs $0c00 <-- Pause, wenn die CPU im Begriff ist, Code bei $0c00 auszuführen.
bs $0c00 z <-- Pause, wenn die CPU im Begriff ist, Code bei $0c00 auszuführen
und setzen Sie den Zykluszähler auf 0
bs $0c00 zc <-- Setzen Sie den Zykluszähler auf 0 und fahren Sie fort
bs $0c00 c <-- Setzt die Ausführung fort (d.h. deaktivierter Haltepunkt)
Der Hauptzweck dieser Modifikatoren ist es, das Zählen der Zyklen zu erleichtern.
Wenn Symbole geladen sind, können sie anstelle von absoluten Adressen verwendet werden.
Es gibt drei Möglichkeiten, wie ein Speicherbreakpoint ausgelöst werden kann; wenn die CPU etwa
um die Adresse (r) zu lesen, und die CPU dabei ist, die Adresse (w) zu schreiben, oder sich der Wert an der Adresse aus irgendeinem Grund ändert (c).
Sie geben an, auf welche Weise der Breakpoint beim Setzen des Speichers ausgelöst werden soll
Haltepunkt:
bsm $0c00 r <-- Pause, wenn die CPU im Begriff ist, von $0c00 zu lesen
bsm $0c00 rw <-- Pause, wenn die CPU im Begriff ist, auf $0c00 zuzugreifen
bsm $0c00 c <-- Pause nach dann Inhalt von $0c00 ändern
bsm $0c00 rwc <-- Pause kurz bevor die CPU auf $0c00 zugreift, oder kurz danach
Änderungen aus irgendeinem Grund.
Internationale Tastaturen unter Linux und macOS
===============================================
Es gibt viele Probleme mit einigen internationalen Tastaturen unter Linux
und MacOS. Der beste Weg, mit ihnen fertig zu werden, ist die Installation eines UK- oder US Tastaturdefinition und zum Umschalten darauf *vor* dem Start von oricutron.
Unter MacOS können Sie das in den "Systemeinstellungen", "Tastatur", "Eingabe Quellen". Klicken Sie auf das + und suchen Sie nach der britischen oder US-amerikanischen Tastatur.
Unter Ubuntu können Sie dies im Menü System tun, indem Sie Präferenzen wählen und dann wählen Sie Tastatur. Wählen Sie im Dialogfeld Tastatureinstellungen die Option Layouts, und klicken Sie auf Hinzufügen.
Eine bessere Lösung finden Sie unter "Visuelle Tastatur" hier unten.
Virtuelle Tastatur
==================
Oricutron kann eine visuelle Tastatur anzeigen, die auch eine Funktion zur Neudefinition der Tastaturbelegung enthält.
Sie ist über ein Untermenü namens "Tastatur-Optionen" zugänglich.
In diesem Untermenü finden Sie:
- einen Umschalter, der die visuelle Tastatur ein-/ausblendet (Sie können auf die Tasten der Tastatur klicken, um Tastendrücke/Freigaben einzugeben) ;
- einen Umschalter, der Sie in den Modus zur Definition der Tastenbelegung bringt (Sie können dann auf eine Taste der visuellen Tastatur klicken; drücken Sie eine echte Taste auf Ihrer Tastatur und die Belegung wird funktionieren) ;
- ein Umschalter, der es erlaubt, Mod-Tasten (Strg, Umschalt, Funktion) zu klemmen (d.h. Sie klicken zuerst auf eine Taste, um sie zu drücken, und klicken dann entweder erneut darauf, um sie zu lösen, oder Sie klicken auf eine andere Taste, und es wird ein modifizierter Tastendruck erzeugt - z.B. ein Strg-T statt T - und dann die Taste automatisch loslassen) ;
- eine Option zum Speichern einer Tastaturbelegung (.kma-Datei) ;
- eine Option, um eine Tastaturbelegung zu laden;
- eine Option, die die Tastaturbelegung auf die Standard-Tastaturbelegung zurücksetzt.
Sie können auch das Folgende in Ihrer oricutron.cfg hinzufügen, um eine Tastatur automatisch zu laden
Mapping (hier Test.kma im Keymap-Verzeichnis, das im Verzeichnis von Oricutron gefunden wurde):
; lädt automatisch eine Tastaturbelegungsdatei
autoload_keyboard_mapping = 'keymap/Test.kma
Mit anderen Optionen können Sie die Tastatur anzeigen lassen und automatisch sticky Mod-Tasten aktivieren:
show_keyboard = ja
sticky_mod_keys = ja
Emulation der seriellen Karte (ACIA)
====================================
Oricutron kann ACIA an der Adresse #31C (Standardadresse für Telestrat) emulieren.
Die Emulation funktioniert für Oric, Atmos, Telestrat und Pravetz und kann zusammen mit einem beliebigen Plattentyp verwendet werden.
Die emulierte ACIA kommuniziert mit der Außenwelt über Back-Ends.
Back-Ends können in der 'oricutron.cfg' oder über die Befehlszeile konfiguriert werden.
(siehe Standard 'oricutron.cfg' für die Verwendung).
Back-Ends sind:
- keine - deaktiviert die ACIA-Unterstützung
- Loopback - jedes gesendete Byte wird in den Empfangspuffer zurückgeschickt (zu Testzwecken)
- com - Oricutron verwendet einen beliebigen realen oder virtuellen COM-Port im Host-Rechner und kommuniziert mit der an diesen seriellen Port angeschlossenen Hardware.
- Modem - vereint ACIA mit angeschlossenem Modem, das mit dem Internet verbunden ist, mit Server- und Client-Steckdosen
Im 'Modem'-Modus sind folgende 'AT'-Befehle verfügbar:
AT - gibt 'OK' zurück
ATZ - das Modem initialisieren
AT&F - das Modem initialisieren
ATS0=0 - automatische Anrufbeantwortung ausschalten (trennende Steckdose schließen)
ATS0=1 - automatische Anrufbeantwortung aktivieren (Öffnen Sie den Socket und beginnen Sie das Abhören auf dem ausgewählten Port (Standard ist Telnet-Port 23))
ATA - gleich wie 'ATS0=1'.
ATS0? - liefert 'AUTOANSWER OFF' oder 'AUTOANSWER ON' je nach aktuellem Status der einzelnen Sockets
ATH0 - aktuell angeschlossene Steckdosen trennen
+++ - wenn angeschlossen, schaltet in den Befehlsmodus
ATO - kehrt vom Befehlsmodus in den Online-Modus zurück
ATD ip:port - verbindet sich als Client mit ip:port. 'ip' kann ein beliebiger Hostname (z.B.:localhost) oder die echte IP (z.B.:127.0.0.1) im LAN oder im Internet sein. ATDP und ATDT sind aus Kompatibilitätsgründen eine Alternative.
Emulation der CH376-Karte
=========================
Oricutron läuft mit dem Chip ch376. Dieser Chip ist in der Lage, eine sdcard und einen usbkey (und USB-Anschluss) zu lesen. Dieser Chip verarbeitet FAT32. usbdrive/ Ordner ist der CH376 Emulationsordner. Das bedeutet, dass, wenn der ch376 usbkey lesen soll, liest er in diesem Ordner. Bitte beachten Sie, dass Lesen/Schreiben emuliert wird (siehe unten für den emulierten Befehl ch376). Bitte beachten Sie zudem, dass die Emulation nur im Telestrat-Modus funktioniert. Unter Atmos läuft dieser Chip zwar, aber die ROMs wurde noch nicht freigegeben (und auch die Karte mit den ROMs noch nicht).
Orix (http://orix.oric.org) arbeitet hauptsächlich mit diesem Chip. Bitte verändern Sie die ch376-Emulation nicht: Kontaktieren Sie Jede ([email protected]), weil diese Emulation auch im ACE-Emulator (cpc-Emulation) verwendet wird. Offset und ich versuchen hier, dieselbe Emulation zu nutzen. Es ist einfacher, zusammen zu arbeiten als allein.
CH376 Befehl emuliert :
- CH376_CMD_GET_IC_VER
- CH376_CMD_CHECK_EXIST
- CH376_CMD_SET_USB_MODE
- CH376_CMD_GET_STATUS
- CH376_CMD_RD_USB_DATA0
- CH376_CMD_WR_REQ_DATA
- CH376_CMD_SET_FILE_NAME
- CH376_CMD_DISK_MOUNT
- CH376_CMD_FILE_OPEN
- CH376_CMD_FILE_ENUM_GO
- CH376_CMD_FILE_CREATE
- CH376_CMD_FILE_ERASE (unter Linux nicht emuliert)
- CH376_CMD_DATEI_CLOSE
- CH376_CMD_BYTE_LOCATE
- CH376_CMD_BYTE_READ
- CH376_CMD_BYTE_RD_GO
- CH376_CMD_BYTE_WRITE
- CH376_CMD_BYTE_WR_GO
- CH376_CMD_DISK_QUERY
- CH376_CMD_DIR_CREATE (unter Linux nicht emuliert)
- CH376_CMD_DISK_RD_GO
Bekannter Fehler :
Unter Windows sendet die API-Datei keine "." und "..."-Einträge, wenn der Inhalt des Ordners gelesen wird. Das ist ein Problem, weil der ch376-Chip diese Einträge sendet, wenn der Chip den Inhalt eines Verzeichnisses lesen soll.
Wenn jemand CH376_CMD_DIR_CREATE und CH376_CMD_FILE_ERASE emulieren möchte ist das einfach zu machen: man muss nur die WIN32-Funktion kopieren, das DeleteFile ersetzen und CreateDir mit rm() und mkdir(). Aber es wird nicht gemacht, weil wir nicht in der Lage sind, es zu testen.
CH376-Emulation hinzugefügt für :
CH376_CMD_FILE_ERASE unterdrückt eine Datei
CH376_CMD_DIR_CREATE Ordner erstellen
ROM-Patch-Dateien
=================
Für die detaillierte Verwendung siehe die enthaltenen '.pch'-Dateien im Unterverzeichnis roms.
Zusätzlich kann eine unbegrenzte Anzahl von binären Patches hinzugefügt werden:
$XXXX:00112233445566778899AABBCCDDEEFF....
$YYYYY:AA55AA55.....
$ZZZZ:FF00FF00.....
wobei XXXX,YYYYY,ZZZZ - hexadezimale Adressen relativ zur ROM-Startadresse sind
(d.h. um Byte bei C000 auf 00 zu setzen, verwenden Sie: $0000:00)