Technischer nderungsreport (chronologisch)
-------------------------------------------

Hierin sind alle fr Programmmierer und Anwender relevanten nderungen an MagiCMac
aufgefhrt, nicht jedoch nderungen am MagiC-Betriebssystem!

Dieser Liste ist als Referenz und nicht als Anleitung zu verstehen!

Hinweis: Die diversen Parameter in der sog. Prefs-Datei knnen nur mit einem Resource-
Editor auf dem Macintosh vorgenommen werden, z.B. mit ResEdit. Dazu ist die Datei
"MagiCMac Prefs" mit ResEdit zu ffnen. Dort befinden sich dann alle Parameter im
Resource-Element "STR#". Die Parameter haben alle einen Namen und ihre Werte knnen
durch Doppelklick eingesehen und verndert werden.

nderungen vor Version 1.1.2:

- Neuer Parameter in Prefs-Datei: "IntsWhileWNE". Ist er Eins, werden die Interrupt-Routinen
  fr 200 Hz-Timer ($118) und VBL ($70) auch aufgerufen, whrend Mac-Applikationen im
  Hintergrund Zeit abbekommen. Damit bekommen Programme, die diese Interrupts benutzen,
  lckenlos ihre Aufrufe, solange MagiCMac im Vordergrund luft.
  Ist der Wert Null, werden wie bisher die Interrupt-Aufrufe unterdrckt, wenn gerade Zeit
  an die Mac-Applikationen im Hintergrund vergeben wird.
  Sobald MagiCMac nicht mehr den Bildschirm vollstndig belegt, also z.B. durch Command-W
  auf die Mac-Seite umgeschaltet wurde oder wenn ein Mac-Dialog einscheint, werden unbedingt
  alle Interrupt-Aufrufe unterdrckt.
- Neuer Parameter in Prefs-Datei: "PhysVideo". Er ist fr 68030-Rechner vorgesehen, bei denen
  beim Start eine Fehlermeldung kommt, die darauf hinweist, da GetPhysical nicht funktioniert
  oder da die Adresse des Video-Speichers nicht ermittelt werden kann. In diesem Fall sollte
  der Wert von Null auf Eins oder Zwei gesetzt und jeweils ein erneuter Start von MagiCMac
  versucht werden. In jedem Fall sollte ASH vom Ergebnis informiert werden, damit in Zukunft
  auf diesen Parameter verzichtet werden kann.
- Durch Festhalten der Option-Taste bei "ber MagiCMac*" erscheinen statt der Info-Box
  Angaben ber die Speicherbelegung von MagiC im Mac.
- Neuer Parameter in Prefs-Datei: "UseCDM". Ist er Eins, wird zum Abfragen der Maus der
  neue "Cursor Device Manager" des MacOS benutzt, falls er vorhanden ist. Dies ist z.B.
  bei den Performa 475 und 630 sowie den neuen 68040-PowerBooks der Fall. Wird der CDM
  benutzt, ist offenbar die Mausbeschleunigung deaktiviert und die Maus lt sich nicht
  pixelgenau positionieren, ruckelt wahrscheinlich auch mehr. Daher sollte dieses Flag
  normalerweise auf Null stehen, damit das alte Verfahren benutzt wird. Dies funktioniert
  aber evtl. auf neueren Systemen nicht mehr. Mal sehen...
- lange Dateinamen gehen, QED luft wieder.
- Die Rckruf-Routinen des MgMc-Cookies fhren nicht mehr zum Absturz des Systems.
- Luft nun auch mit System 7.0.1 (vorher kam Meldung "MoveHHi() failed")
- Logitech "MouseMan" wird untersttzt.
- Zeichenkonvertierung bei Clipboard erzeugt nun scharfes "s" statt beta-Zeichen.
- Untersttzung fr 2-Tasten-Muse und Rechts-Shift bei Tastaturen verbessert:
  1. Wenn mehrere Tastaturen vorhanden sind (z.B. ein Extended Keyboard an einem PowerBook),
  wird explizit nach der Extended Tastatur gesucht und genau diese dann fr die
  Rechts-Shift-Untersttzung umprogrammiert.
  2. Wenn mehrere Muse und/oder TrackBalls angeschlossen sind (z.B. eine 2-Tasten-Maus
  an einem PowerBook, welches zudem ja noch den TrackBall hat), wird jedes einzelne
  Gert ggf. fr die 2-Tasten-Bedienung umprogrammiert.
  3. Einige PowerBooks (170 nicht, jedoch z.B. 270c) erlauben die Unterscheidung der
  beiden TrackBall-Tasten als linke und rechte Maustaste. Dies wird nun ebenso aktiviert,
  wie bei der MicroSpeed- und der Logitech-Maus, falls der Schalter in den Systemparametern
  aktiviert ist.
- Pure-Pascal-Programme drften nun nicht mehr mit "Exception 11" abstrzen beim Start
  auf Rechnern mit einer 68LC040-CPU.
- Keine Abstrze mehr auf 68030-CPUs mit FPU, wenn ein Programm mit FPU-Benutzung
  darauf gestartet wird.
- Neuer Schalter "Zeit an Mac-Appl. im Hintergrund abgeben": Ist er aktiviert (wie es
  bisher praktisch immer war), dann bekommen die Macintosh-Programme auch Rechenzeit,
  whrend MagiC im Vordergrund arbeitet. Dies ist z.B. sinnvoll, wenn ein Mac-Programm
  whrenddessen Dateien entpacken oder Daten ber's Modem bertragen soll. Schaltet man
  hingegen diese Option aus, knnen auch strende Programme, wie z.B. das Monitor-
  Kontrollfeld, auf Mac-Seite geffnet bleiben, ohne da sie den Betrieb unter MagiC
  beeinflussen.
  Besonders, wenn Zeitmessungen (Benchmarks) vorgenommen werden, sollte daher dieser
  Schalter deaktiviert werden!
- Neuer Schalter "ADB-Maussteuerung": Ist er aktiviert, werden die Mausdaten direkt an
  der Quelle abgefragt, anstatt dazu die "normale" Betriebssystemvariablen zu verwenden.
  Dies ist effektiver, kann aber nur mit richtigen und Apple-kompatiblen Musen
  funktionieren. Auerdem werden dabei die Bewegungsdaten der Maus unverndert ermittelt,
  d.h., da z.B. die Einstellung einer Mausbeschleunigung ber das Mac-Maus-Kontrollfeld
  keine Wirkung mehr hat. Wenn dennoch eine Beschleunigung erwnscht ist, sollte ein
  Mausbeschleuniger auf MagiC-Seite installiert werden. Solche, die sich in den Maus-Vektor
  mittels der XBIOS-Funktion "Kbdvbase" einhngen, drften keine Probleme bereiten.
- XBRA-Ketten bei Cookie werden nicht mehr mit NULL-Zeiger sondern mit Zeiger auf RTS
  terminiert.
- Fehler behoben, der zu unkontrolliertem Absturz fhrte, wenn Templemon nicht installiert
  war und dann eine Exception auftrat.
- Disk-Einlegen fhrt unter VM nicht mehr zum Absturz.
- Wenn keine Zeit an Mac-Hintergrund abgegeben wird, wird das Einlegen von
  Mac-Disketten wieder erkannt.
- Speicherverteilung korrigiert:
  Es wird darauf geachtet, da bei aufgeteiltem RAM das TT-RAM immer im TPA2-Bereich
  liegt; ST-RAM wird immer unterhalb von 16MB angelegt.
- Preemptives MT optional (Prefs: "AllowTaskSwitch" von 0 auf 1 setzen!).
- Durch Doppelklick (o. Drag&Drop auf MM) einer Prefs-Datei kann diese explizit
  verwendet werden.
- Printer-Setup wird in Prefs gesichert, Cookie erweitert um Printer-Setup und
  Callback f. Setup-Dialog.
- Disk-Auswurf per Befehl-Y statt Befehl-E

20.3. v1.1.2

- GEMDOS.Fdatime() korrigiert: Das nderungsdatum der Datei stimmt nun auch bei Uhrzeiten
  ab 16.00h. -> Make bei Pure C funktioniert nun wieder.
- Wenn "PhysVideo" = 3 (Prefs-Datei) ist, wird keine Fehlermeldung angezeigt, wenn
  Video-Adr. nicht verifiziert werden kann.
- "Mediach"-Funktion (BIOS 9) liefern nun EUNDEV (-15) statt Null bei Laufwerken,
  die kein FAT-Dateisystem enthalten.
- Der BPB bei Floppies mit FAT-Dateisystem enthlt nun hinter den 18 offiziellen Bytes
  noch die mehr oder weniger undokumentierten Werte bis einschl. zur Seriennummer der
  Disk (KOBOLD bentigt dies).
- macxfs.c/Fxattr(): "device"-Eintrag liefert nun die ioVRefNum statt die Atari-LW-Kennung

7.4. v1.1.6

- Prefs: Boolean "QuitAEUncond" beendet MagiCMac ohne Nachfrage, wenn Quit ber
  AppleEvents kommt.
- Die Info-Routinen des Cookies fr's Beenden von MM werden nun eher aufgerufen
  (die von MM simulierten Interrupts sind dann noch aktiv).
- Prefs: Boolean "UnlockMemOnMacSide" (Default 1): Wenn Null, wird der belegte Speicher
  unter VM nicht zum Auslagern freigegeben.
- Fdatime-Aufrufe ndern neben dem nderungsdatum nun auch das Erzeugungsdatum.
- Atari-I/O-Karten (z.B. McSTout) lassen sich nun auch auf 68030-Rechnern einblenden
  (bisher nur auf 68040, sonst kam Fehlermeldung, da GetPhysical nicht funktioniert)

6.6. v1.2

- 2 Bugs in Floppy-Routinen behoben:
  Erstens wurde fr A: und B: derselbe BPB-Puffer verwendet (dies war aber nicht weiter
  tragisch, denn wer hat schon 2 Floppy-Laufwerke im Einsatz?)
  Zweitens passiert es nun nicht mehr, da beim Verwendung von PC Exchange der Inhalt vom
  Bootlaufwerk statt von der Floppy gelesen wird (Reg. A2 wurde in is_dos_format() beim
  Aufruf von Floppy_bpb() zerstrt, was zu Folgefehlern fhrte).
- Cookie erweitert um PowerPC-Flag (Cookie-Version 1.05)
- Cookie: Der 'flags1'-Eintrag wurde vllig falsch gesetzt (es wurde "||" statt "|"
  zum verodern benutzt  ich hasse C!).
- Schreibgeschtzte Dateien lassen sich nun endlich ffnen, wenn sie nur zum Lesen
  geffnet werden sollen.
- Eject-Mechanismus fr Dcntl() implementiert.

13.6. v1.2.1

- Gefordertes ST-RAM wird mglichst ans obere Ende, also direkt unter den I/O-Bereich,
  verschoben, damit der System-Heap nicht im Wachsen blockiert wird.
- Tastaturcodes: Die Mac-Tasten End(79), PgUp(73), PgDown(81), F11(69), F12(70) und
  F14(55) liefern nun auch eigene Scan-Codes (Werte in Klammern). Nicht ausgewertete
  Mac-Tasten, die bisher den Scan-Code Null lieferten, werden nun ignoriert.
- Command-B simuliert das Drcken beider Shift-Tasten (ntzlich bei Keyboards, die nicht
  zw. rechter und linker Shift-Taste unterscheiden knnen).
- MacEvents/Intr: Zeitabgabe an Mac-Apps jetzt einstellbar ber Pref "WNEFrequency"
  (Werte: 1 -> alle 1/60s, n -> n/60s, Werte kleiner 0 werden zu 1). Default ist nun
  1/60s statt bisher 8/60s.
- Prefs: "EmulUpdFreq" neu. Bestimmt, bei jedem wievielten VBL die Screen im 640*400-
  Emulationsmodus kopiert werden soll. Default: 2.
- Monochrom-Emul-Modus wird auch bei Rechnern untersttzt, deren Monitore nicht auf
  Schwarz/Wei einstellbar sind (das gilt z.B. fr die Grafikkarten bei den PowerMacs).
  In diesem Fall wird der Mac-Monitor in 256 Farben betrieben. Das Kopieren dauert
  dadurch leider deutlich lnger und bremst den Rechner sprbar.
- Der Puffer zum Sichern des Atari-Bildschirminhalts beim Wechsel zum Mac wird nun
  noch so gro angelegt, wie bentigt. Bei bestimmten Rechnern (z.B. Q950) wurde bisher
  immer so viel Speicher wie fr die theoretisch hchste Auflsung reserviert, auch wenn
  diese Auflsung gar nicht benutzt wurde. Im 640*400-Emul-Modus wird allerdings so viel
  Speicher verbraucht, wie die Sicherung des gesamten Bildschirms mitsamt des schw.
  Rands bentigt.
- Prefs: "NMIToAtari" (Boolean). Wenn FALSE, gehen alle NMI-Intrs an Mac-Seite.
  Bei TRUE wird zur Atari-Seite geschaltet, sofern MagiCMac im Vordergrund luft
  (ist die Mac-Screen aktiv, wird der NMI-Handler vom Mac aufgerufen). Allerdings
  sollte nach Mglichkeit Befehl-Einschalttaste statt des NMI-Tasters benutzt werden,
  denn die Entprellung beim NMI ist nicht ganz zuverlssig.
- Der Default-Exception-Handler (Alert #139) macht bei "Quit App" mit gedrckter
  Option-Taste einfach einen RTE, ignoriert also die Exception.
- Prefs: "SelectMonitor". Ist der Wert ungleich Null, verwendet MM nicht den Hauptmonitor
  sondern den mit der angegebenen Nummer, falls mehrere Monitore vorhanden sind.
  Templemon verwendet aber weiterhin den Hauptmonitor.
- MagiC.c: Bconout (PRN), Bconout (AUX) und Bconin (AUX) liefern nun immer Long-
  expandierte Rckgabewerte. Bisher stand u.U. im High-Word Mll.
- Prefs: "KbdConfig" legt fest, welche Tasten in Kombination mit der Befehlstaste
  simuliert werden sollen. Der Wert setzt sich aus einzelnen Bit-Flags zusammen.
  Bit 0: Simulation fr die Funktionstasten ber Befehl-Ziffer (Default: An).
  Bit 1: Simulation der Sondertasten ber Bef-H/U/D/E/C (Default: An).
  Bit 2: Simumation der beiden Shift-Tasten ber Befehl-B (Default: An).
- Prefs: "AHDI_Devs" ist ein Bit-Feld, das bestimmt, welche SCSI-IDs auf AHDI-Laufwerke
  berprft werden sollen. Dabei steht Bit 0 fr SCSI 0, Bit 1 fr SCSI 1 usw. bis SCSI 6.
  Um alle SCSI-IDs zu prfen, ist also 127 einzutragen, wenn keine AHDI-LWs angeschlossen
  sind, kann 0 eingetragen werden, um den Boot-Vorgang zu beschleunigen.
- Der Schalter "Keinen Idle-Zustand erlauben" bei den Powerbook-Prefs hatte berhaupt
  keine Wirkung. Der Code, der dieses Flag behandeln sollte, ist spurlos verschwunden.
  Mal sehen, wie lange er diesmal drin bleibt*
- Die Meldung "Nicht gengend Heap-Speicher" konnte bisher nicht ausgegeben werden,
  stattdessen erschien dann "Luft nur mit System 7.".
- Bei ADB-Mausabfrage wird ebenso, wie das Drcken des Buttons, nun auch die Mausbewegung
  ausgefiltert, d.h., fr das MacOS und andere Hintergrundappl. bleibt die Maus unbewegt
  in der Mitte des Hauptmonitors, solange der MagiC-Bildschirm aktiv ist.
- Falls Prefs-Flag "UnlockMemOnMacSide" = 0 ist, wird bei Programmende der Bereich
  nun unlocked - bisher passierte das nicht und drfte deswegen zu Problemen beim
  Beenden gefhrt haben. Dies ist natrlich nur dann relevant, wenn man VM aktiviert
  hat und das Prefs-Flag manuell auf Null gesetzt hat.
- Kein Absturz mehr, wenn bei aktivem VM auf ein Mac-Programm gewechselt wird (Fehler
  drfte seit v1.1.7 existiert haben). Dabei wird nun der Speicher, den MM fr MagiC
  reserviert hat, erst freigegeben, wenn man auf eine andere Mac-Appl. wechselt und
  nicht mehr, wie bisher, bereits beim Umschalten auf die Mac-Seite mittels Cmd-W.
- Die Versionskennung von "MagiCMac OS" wird nun mit der von der Applikation verglichen
  und eine Fehlermeldung bei Nichtbereinstimmung angezeigt.
- Wenn wg. defektem "Design Kbd" die Handler-ID nicht rcksetzbar ist, wird eine entspr.
  Fehlermeldung angezeigt.
- Bei Aufruf von Info-Routinen durch 'PortControl', 'InfoHideAndShow' und
  'InfoSuspendResumeQuit' wird nun kein eigener Stack mehr benutzt sondern der
  MagiC-Stack verwendet. Dies ist notwendig, weil die aufgerufenen Info-Handler
  evtl. 'callMacContext' aufrufen und deshalb vorher nicht der Mac-Appl-Stack aktiv
  sein darf, wie es dennoch bisher der Fall war.
- Prefs: 'AtariStackSize' neu (Default: 0). Wenn ungleich Null, wird damit die Gre
  aller unter MagiC eingerichteten Supervisor-Stacks (jeder Proze bekommt einen)
  vorgegeben. Der Mindestwert ist z.Zt. 5120 (wird verwendet, wenn AtariStackSize
  zu klein oder Null ist), der Maximalwert 32764.
- Floppy-Zugriff geht wieder bei aktivem VM.
- Read-Only-ffnen von schreibgeschtzten Dateien auf Servern und CD-ROMs sollte nun
  auch funktionieren.
- BIOS-Funktion Bcostat() fr AUX fragt nicht mehr CTS-Status ab, sondern prft, ob die
  nun asynchrone bertragung des letzten Bytes bereits abgeschlossen ist.
- Auf PowerBooks mit 16 Graustufen (z.B. PB 520) bleiben beim Wechsel zum Mac-Bildschirm
  nun die "Farben" erhalten, bisher nutzte der Finder z.B. dann nur noch s/w-Icons.
- Text bei PowerBook-Optionen gendert in "Einschlafen und langsame Taktung verhindern".
- Aufwachproblem bei PBs gelst: vor dem Einschlafen wird nun automatisch zum Mac-Schirm
  gewechselt, beim Aufwachen entspr. zurck.
- Die XBIOS-Funktionen zum Setzen von Datum&Zeit funktionieren nun.
- Control Strip wird nun automatisch bei Wechsel zum Atari-Schirm ausgeblendet;
  der Prefs-Eintrag "FKEYContextSwitch" wird nicht mehr benutzt.
- XBios-Routinen fr Floppy-Zugriffe implementiert:
  - Floprd(), Flopwr()
  - Flopver() liefert bei Fehlern immer alle verifizierten Sektoren in der Bad-Sector-List.
  - Flopfmt() formatiert und verifiziert ganze Disk auf einmal, wenn mit Spur 0, als auch
    wenn mit Spur 79 begonnen wird.
    Falls dabei ein Fehler auftritt, wird in dem bergebenen Puffer allerdings eine leere
    Bad-Sector-List bermittelt. Bei anderen Spuren wird nichts getan und immer OK geliefert.
    Bei SPT ungleich 9 oder 18 sowie bei Track>79 wird auch sofort ein Fehler geliefert.
    Beim Formatieren gibt es noch eine kleine Macke: Wenn man eine Disk unter MagiC formatiert,
    die vorher ein Mac-Format hatte, dann kann man nach dem Formatieren nicht auf die Diskette
    zugreifen, bis sie einmal aus- und wieder eingeworfen wurde.
  Allerdings funktionieren die Floppy-Routinen immer noch nur mit zweiseitigen Disks mit
  9 oder 18 Sektoren pro Spur und max. 80 Spuren.
- Zeichenumwandlung fr Clipboard beherrscht nun alle umsetzbaren Zeichen. Nicht umsetzbare
  Zeichen werden nun zu Sternchen ("*") anstatt, wie bisher, zu Fragezeichen.
- Wenn Text-Konvertierung fr`s Clipboard wg. zuwenig Speicher nicht klappt, wird nun ein
  richtiger Alert angezeigt. Bisher wurde Alert #128 aufgerufen, der aber gar nicht existierte
  und damit zu Abstrzen o.. fhren konnte.
- Wenn Mac-FKEYs ber Cmd-Shift-Ziffer augefhrt werden, fhrt dies nicht mehr gleichzeitig
  zu einer Simulation einer Funktionstaste unter MagiC. Umgekehrt wird auch beim Erzeugen
  einer Shift-Funktionstaste per Shift-Cmd-Ziffer kein FKEY ausgelst.
  Ob Mac-FKEY oder Shift-Funktionstaste erzeugt wird, ist davon abhngig, ob zuerst die
  Befehls- oder die Shift-Taste gedrckt wird, es sei denn, nur eine der beiden
  Tastenkombinationen soll ausgewertet werden (s. KbdConfig).
  Die Unterscheidung, ob Funktionstaste oder FKEY gewhlt wurde, klappt leider nur, wenn
  kein WNE fr Event-Abfrage benutzt wird, wenn also keine Zeit an Mac-Apps gegeben wird.
  Bei Zeitabgabe an Mac-Apps werden FKEYs immer ausgefhrt, egal, ob zuerst die Shift-
  oder die Befehlstaste gedrckt wurde. Das Flag in "KbdConfig" ist dann auch nicht wirksam,
  d.h, die FKEY-Auswertung kann bei WNE-Benutzung nicht deaktiviert werden.
- Prefs: "KbdConfig" (s.o.) erweitert:
  Bit 4: Auslsen von FKEYs beim Drcken von Befehl-Shift-Ziffer (Default: An)
- Warmstart, ausgelst durch eine Interrupt-Routine, kann nicht funktionieren.
  Deswegen wird nun dann eine entspr. Fehlermeldung angezeigt.
  Andere Warmstarts, z.B. von der EASE (Auflsungswechsel) aus, funktionieren aber.
- Dateityp der Prefs-Datei ist nun wieder 'Pref' statt 'pref', alte 'pref'-Files knnen
  aber weiterhin geffnet werden.
- XCMDs neu. XCMDs liegen im Ordner, der i.d.R. "MagiCMac XCMDs" heit und im selben Verzeichnis
  wie die MagiCMac-Appl. liegt. Statt des Ordners selbst kann dort auch ein Alias auf einen
  beliebigen Ordner (auch im Netz) angelegt werden, wichtig ist nur, da der Ordnername mit dem
  bereinstimmt, was in den Prefs unter "XCMDs folder name" steht.
  Im resultierenden Ordner knnen wiederum statt des XCMDs selbst Alias-Dateien auf sie
  angelegt werden.
- Kein Mac-Systemabsturz mehr, wenn wg. zuwenig Speicher "MagiCMac OS" nicht ausgefhrt
  werden konnte.

11.8. v1.2.2

- Der Mac-Applikations-Stack wurde um 8KB vergrert.
- Die von MagiCMac verwendeten temporren Stacks fr die Umschaltung in den Atari-Modus
  wurden von 4KB auf 8KB erhht, damit das System auch stabil auf den neuen PCI-PowerMacs,
  z.B. dem PM 9500, luft.
- Prefs: "PutRAMatIO" (Boolean, Default: 0) probeweise vorgesehen. Ist es 1, wird im
  I/O-Bereich ($xxFF8xxx) RAM eingeblendet, das anfangs mit Null-Bytes gefllt ist.
  Wenn dies der Fall ist, laufen aber viele Programme nicht mehr, die dort Bus-Errors
  erwarten, z.B. Pure Pascal-Programme, die Floating-Point-Berechnungen durchfhren,
  da der PP-Runtime-Code prft, ob sich dort eine FPU befindet, indem es testet, ob
  es in dem Bereich einen Bus-Error gibt.

24.8.95: Fertigstellung v1.2.3

- MgMcCookie.auxControl wird bei Zurckschalten auf Atari-Bildschirm nun endlich mit
  richtigem Argument (1 statt 0) aufgerufen, so da HSMODEM nun auch den Ser. Port
  wieder ffnet, wenn er manuell auf Mac-Seite geschlossen wurde.
- Dateisystem (Mac-Partitionen): Dateien, die nicht ins 8.3-Schema passen, werden bei
  Fsfirst/Fsnext nicht mehr mitgeteilt. D.h, da z.B. EASE, solange sie nicht Dreaddir
  fr lange Dateinamen benutzt, in Verzeichnissen nur noch solche Dateien anzeigt, die
  auch von ihr geffnet werden knnen. Das selbe gilt fr den Dateiauswahldialog.
  So kann es sein, da Verzeichnisse, wo der Finder viele Mac-Dateien anzeigt, unter
  MagiCMac leer aussehen.
- Interrupt-Handler optimiert -> deutlich hhere Datenraten bei serieller bertragung.
- Cookie: Whrend "callMacContext" werden keine Mac-Tasks mehr bearbeitet, auch wenn
  whrenddessen zeitweise in den Atari-Modus gewechselt wird.
- MagiCMac OS: Behebt Fehler, da AUTO-Ordner nicht ausgefhrt wurde, wenn sich das
  Boot-Laufwerk auf einem anderen Mac-Volume als die MagiCMac-Applikation befand.
- Dpathconf liefert nun 31 statt 32 als Max-Lnge, Korrekturen auch an anderen Stellen
  bzgl. Dateinamenbehandlung.
- Aktivierung von "True Color" ber den Einstelldialog klappt nun.
- AHDI-Driver liest/schreibt nun in kleineren Hppchen (1MB statt 32MB). Vielleicht lst
  dies das Problem mit dem Laden/Speichern von groen Dateien.
- Die Anzahl der Partitionen, die fr Wechselmedien beim Start von MM reserviert
  werden sollen, kann nun in der Prefs-Variable "RsrvPartitions" vorgegeben werden.
- Stackgre ist nun auch fr die in MM bisher statisch allozierten Stacks
  variabel, d.h. fr die PCI-Macs sollte nun Prefs:AtariStackSize > 8192 gesetzt
  werden und MM dann auch bei aktivem File Sharing stabil laufen knnen.
- Beim Neuanlegen der Prefs-Datei wird nun fr "AtariStackSize" 8KB (68K) bzw. 16KB (PPC)
  eingetragen.
- Prefs: "SafetyFlags" neu. Falls MM instabil luft, diesen Wert auf -1 setzen
  (normal: 0). Wenn's dann stabil luft, unbedingt Nachricht an mich (TT), damit
  der Fehler eingekreist werden kann.
- Der Cache-Modus "Copyback" wird nicht mehr benutzt, weil er kaum Geschwindigkeitsvorteile
  bringt, dafr aber viele Probleme bereitet.
- Prefs: PPCExtMMUTo16MB (Boolean, Default: 1) neu: wenn 0, werden bei PPC die MMU-Tables
  nicht ber 16MB erweitert, wenn max. 16MB installiert sind. Damit treten keine Dateisystem-
  Zerstrungen mehr bei 7100/80 und 8100/100 auf, dafr aber auch keine Bus-Errors beim
  unteren I/O-Bereich, was evtl. einige Programme nicht mehr laufen lt.
- Prefs: "AtariIO1Enabled" (Boolean, Default: 1). Ist der Wert Null, wird der I/O-Bereich bei
  $00FFxxxx nicht ausgeblendet sondern dieser Bereich und alles darber als ST-RAM benutzt.
  So gibt es dann keine Lcke bei 16MB.
  Der Speicher-Einstelldialog hat dafr einen neuen Schalter erhalten.
- Cookie "PMMU" wird mit dem Wert Null angelegt, um anzuzeigen, da die MMU belegt ist.
- MgMc-Cookie: "ext"-Funktionen 0-3 neu. Jetzt kann man endlich einen Mac-FSSpec in einen
  GEMDOS-Pfad konvertieren, um Dateien vom Mac an Atari-Prgs zu bergeben.
- Warmstart verbessert (einige zustzliche Vars rckgesetzt): Sollte nun korrekt klappen.
- Beim Dialog, der bei ATARI-Exceptions erscheint, kann mit "Cmd-Q" der "Quit MagiC"-Button
  gewhlt werden (fr den Fall, da die Maus nicht funktioniert).
- Prefs: "ScreenSizeAdd" neu (Default: 16). Damit strzt MM nicht mehr ab, wenn Maus-Cursor
  in untere rechte Ecke bei Grafikkarte "formac BW card II" bewegt wird (Wert 1 scheint auch
  zu reichen).
- Fehler behoben, da MM nicht lief bei Auflsungen ab 1024*768 und True Color.
- MagiC lscht den CPU-Cache nach dem Relozieren (Laden) von Programmen auch, wenn es angeblich
  auf einer 68020- oder 68030-CPU luft. Damit drfte es keine Abstrze mehr beim Starten
  von Programmen geben, wenn der Speed Enabler (Speed Doubler) auf PowerMacs installiert ist.
  Natrlich kann es immer noch Probleme geben, wenn die Programme selbstmodifizierenden Code
  enthalten - dort mu dann ebenso der CPU-Cache gelscht werden (unter Speed Doubler verhlt
  sich die emulierte CPU wie eine 68030 mit riesigem Daten- und Programm-Cache).
- Prefs: "PhysVideo" wird nun bei Neuanlegen der Prefs-Datei mit 3 statt mit 0 vorbesetzt,
  so da es nicht mehr zur Warnung bei Grafikkarten kommt, da die Adresse des Video-Speichers
  nicht ermittelt werden knne.
- Systemparameter-Dialog: Schalter "MagiC-Multitasking ermglichen" neu. Setzt die Prefs-
  Variable "AllowTaskSwitch".

7.11.95: Fertigstellung v1.2.5

- BIOS-Funktion Rsconf() wertet nun ucr-Parameter aus (d.h., gewnschte Stop-Bits,
  Parity und Datenlnge werden nun bercksichtigt - bisher wurde immer 8N1 benutzt)
- Prefs: "CloseAuxOnSwitch" & "ClosePrtOnSwitch" (Booleans, Default: 0) neu.
  Wenn TRUE, wird beim Wechsel zur Mac-Oberflche automatisch der entspr. Port
  geschlossen, so als ob man den Menbefehl benutzen wrde.
- Untersttzt nun schnelleres Drucken (bei Ausgabe ber GEMDOS-Funktionen).
- In AES-Vars Offset $78 wird Boot-LW eingetragen, damit neues OS endlich auch wieder
  von anderen LWs als C: booten kann.

Fertigstellung v1.2.7

- Config-Dialog: SCSI-IDs fr AHDI-LWs ber Checkboxen im LW-Dialog nderbar.
- Kein Absturz unter VM, wenn andere Tasten whrend Cmd-W gehalten werden.
- Config: PPCExtMMUTo16MB wird immer "false" gesetzt bei folg. Macs: 7100/80, 8100/100,
  8100/110. (Wenn diese hchstens 16MB haben, knnen sie keinen Bus-Error erzeugen,
  wenn ein Programm auf den unteren I/O-Bereich ab $FF8000 zugteift).
- Mac-XFS: Dateinderungsdatum sollte nun bei den Dateien immer korrekt gesetzt werden.
- MacEvents: GrafPort wurde nicht korrekt restauriert am Ende von MacTasks(). Knnte
  Redraw-Fehler bei anderen Mac-Programmen verursacht haben.
- PhysVideo (in Prefs-Datei) wird wieder mit 0 vorbesetzt. Dafr wurde die Erkennung, ob
  die Adresse des Video-Speichers ermittelt werden knne, im 24 Bit-Modus korrigiert.
- Laufwerksdialog enthlt nun auch Schalter fr Ordnungsrichtung der Verzeichnisse.
- Mac-CFS: Alias-Auswertung (Symlinks) implementiert.
- ST High-Emulation fr 8 Bit-Grafikmodus um ca. 1/3 beschleunigt (gemessen mit 68040-CPU)
- ST Mid- und ST Low-Emulationen mit 68K-Code und in C (fr PPC-Native) implementiert.
- CopyEmulScreen wird nun nicht mehr als Deferred Task sondern kontrollert vom MM-Intr-Handler
  aufgerufen, damit sicher ist, da CopyBits (fr PowerMacs) benutzt werden kann.
  Dadurch wird bei ST High auf PowerMacs CopyBits statt der eigenen 68K-Routinen verwendet,
  was die Emulation deutlich schneller machen drfte.
- Copy-Back-Cache wieder aktivierbar, jedoch nur versteckt (durch Halten der Option-Taste
  beim Aufruf des Dialogs).
- Text-Konversion-Tabellen liegen nun in der Rsrc-Fork statt im Code und sind damit
  leicht nderbar.
- Mac-XFS: Drei neue Fcntl-Funktionen fr Mac-Dateien implementiert: Rsrc-Fork ffnen, sowie
  FInfo erfragen/setzen.
- Laufwerksdialog: Reservierte Anzahl LWs fr Wechselplattenlaufwerke einstellbar.
- Systemparameterdialog: Monitor whlbar
- Bei ATARI ST-Screen-Emulation wird nicht mehr ein Extra-Puffer zum Sichern des Bildschirms
  alloziert. Das drfte dann je nach Monitor bis zu einigen 100KB einsparen.
- Absolut-Modus fr Maus-Steuerung implementiert. Damit sollten sich nun auch Grafik-Tablets
  im abs-Modus betreiben lassen.
- Wird ein Mac-Volume statt eines Unterverzeichnisses als MagiC-Laufwerk gewhlt, merkt
  sich MM seinen Treiber und die Partitionsnummer. Dies ist z.B. sinnvoll bei CD-ROM-Laufwerken,
  damit MagiC erkennt, wenn die CD gewechselt wird, um dann die neue CD zu benutzen anstatt
  auf der alten CD zu beharren. Bei Server-Volumes wird jedoch weiterhin Bezug auf den Volume-
  namen genommen, d.h., man bekommt den Einlog-Dialog, wenn man auf das noch nicht vorhandene
  Volume zugreifen will.
  Durch Halten der Option-Taste beim Whlen des Volumes wird der Modus invertiert.
  Die Buttons im LW-Dialog zeigen dann entweder "SCSI n, #p" an (n: 0-6, p:Partitionsnr.)
  oder den Namen des MacOS-Treibers mitsamt der Part-Nr. an.
- Versionsnr. wird im About-Dialog angezeigt.
- ST-Mid und -Low: Auf PowerMacs wird nun immer nach 8 Bit-Auflsung konvertiert.
- Archiv-Bit funzt nun auch bei Mac-Verzeichnissen.
- ReadOnly-Flag kann nun ohne Fehlermeldung gesetzt/gelscht werden.
- MAGICMAC.ACC neu, wenn es installiert ist, gibt's folg. neue Funktionen:
  - Cmd-Q bringt neuen Mac-Dialog, der auch einen sicheren "Shutdown" erlaubt.
  - Quit-AppleEvent an MagiCMac fhrt ebenfalls zum Shutdown, vorausgesetzt,
    die Prefs-Variable "QuitAEUncond" ist Null.
  - Redraw-Msgs vom Mac werden ans MagiC weitergeleitet.
  - Wenn das ACC luft, kann man auf Mac-Seite ATARI-Programme starten, indem
    man sie einfach ffnet. Dazu mssen diese Dateien allerdings den Typ '.PRG'
    und den Creator 'MgMc' haben.
  - Das ACC ermittelt einmal beim Start den Clipboard-Pfad (ber scrap_read) und
    bermittelt ihn an den MagiCMac-Kernel.
- Einige neue Dnctl-Funktionen implementiert (siehe XFS_DEMO.C in der Prg's doc)
- Luft nun auch auf PPCs mit aktiviertem VM.
- Type&Creator werden nun auch beim Ersetzen schon bestehender Dateien korrekt gesetzt.
- Eject sollte jetzt bei allen Wechselmedien (auch CDs, Netzlaufwerke) gehen.
  Kann per Dcntl (CDROM_EJECT) ausgelst werden.
- Durch Mac-Software (z.B. Wacom-Stift) erzeugte Doppelklicks werden nun erkannt,
  indem nicht mehr die Low-Mem Variable "MBState" abgefragt wird sondern die
  MouseUp/down-Events registriert werden.
- Prefs: "UseScreenBuffer" (Default: 1). Wenn 0, wird kein Speicher zum Sichern des
  ATARI-Bildschirminhalts angelegt (spart einige hundert KB, siehe "ber MagiCMac*"-
  Dialog bei gedrckter Option-Taste).
  Nachteil: Wenn MAGICMAC.ACC nicht installiert ist oder whrenddessen ein ATARI-Prg
  im Single-Modus luft, kann kein Redraw stattfinden, falls auf Mac-Seite gewechselt
  wurde oder ein Mac-Dialog (z.B. Beenden-Dialog) erschienen war.
- Neuen Algorithmus zum Anfordern des Speicher fr MagiC (TPA) implementiert. Der alte
  Algorithmus kann durch Setzen der neuen Prefs-Var. "MemAllocMode" von 1 auf -1 wieder
  aktiviert werden.
- Exeption-Dialog zeigt neben der Exc-Nr und der opt. Bus Error-Adresse nun auch den
  PC, bei dem der Fehler auftrat.
- TempleMon 2.05 luft auch auf Macs, die keinen S/W-Darstellungsmodus haben.
- MM konnte unter System 7.5.3 (vermutlich auch auf System vor 7.5) mit System Error #28
  (Stack-berlauf) abstrzen, insbesondere, wenn man gleichzeitig Verbindungen bers
  Netzwerk benutzte. Drfte nur aufgetreten sein, wenn auch "Zeit an Mac-Apps" aktiviert
  war. (Hintergrund: Nun wird auch in Intr-Routinen, bei denen der Stack-Ptr umgesetzt
  wird, die Low-Mem StkLowPT auf Null gesetzt, um dort den "Stack-Sniffer" zu deaktivieren.)
- Prefs: Defaulf f. 'AtariStackSize' nun immer 32000 (falls der Wert 8192 bzw. 16386 ist,
  wird der Wert in 32000 gendert).
- Beim Start wird geprft, ob im angemeldeten Boot-Laufwerk die Datei MAGX.INF und der
  Ordner GEMSYS existiert. Wenn nicht, wird ein Alert und dann der Laufwerksdialog
  angezeigt.
- Mac-XFS: FUTIME (MiNT-Funktion) als Dcntl implementiert.
- Versteckte Mac-Dateien werden nun also solche erkannt.
- Cookie: Neue Ext-Funktion (extIntrInfo) speziell fr Harun.

17.6.96: Fertigstellung Version 2.0

- Hidden-Attribut kann nun auch gesetzt/gelscht werden (per Fattrib).
- Dcntl(FUTIME) funktioniert nun auch bei Ordnern.
- Memory-Aufteilung korrigiert. Sollte nun mit groen Werten in "Max Total" klarkommen.
- Wenn McSTout installiert, kann man im Memory-Dialog trotzdem "durchgngiges ST-RAM"
  im unteren I/O-Bereich aktivieren.
- BNDL-Resource: 'alis'-Eintrag wieder entfernt, weil MM sonst unter System 7.5.3 nicht
  ber Alias im Apple-Men zu starten ist.
- Aufwerfen von CDs geht nun auch mit AppleCD-Treiber (bisher nur mit FWB CD-ROM Toolkit)
- Neues Programm "Dateinamen konvertieren": Wandelt Umlaute von Dateien, die unter
  MagiCMac 1.x erzeugt wurden, in Macintosh-Zeichen um, damit sie unter MagiCMac 2.x
  wieder korrekt erscheinen.
- Frename() und Fsfirst() funktionieren wieder mit Umlauten in den Dateinamen
- Die bevorzugte Gre der Speicherzuteilung (Heap) von MagiCMac ist nun 350 KB
  (bisher 280).

2.7.96: Fertigstellung Version 2.0.1

- Neues Programm "True Gray": Korrigiert Device-Attribut auf Null, wenn der
  Bildschirm Graustufen darstellen soll.
- Kein Absturz mehr beim Start von MM, wenn SoftwareFPU installiert ist (klappt aber
  nur wenn mind. Version 3.0 von SoftwareFPU benutzt wird!).
- BugFix in TmpMemAlloc: Wenn nur ein Block angefordert wird, z.B., weil "durchgehender
  I/O-Ber." gewnscht wird, kommt es nur noch dann zu einem Abbruch, wenn dieser eine
  Block nicht der MinTPA-Anforderung entspricht.

15.7.96: Fertigstellung Version 2.0.2

- Jetzt kann man wieder Floppies formatieren, ohne da sie dabei gleich ausgeworfen werden.
- Bei einer 68040-CPU wird der FPU-Cookie auf 8 gesetzt, damit MagiC beim Proze-
  Switching die FPU-Regs bercksichtigt.
- MgMc-Cookie: Neue configKernel-Funktion zum Umschalten auf Mac-Seite.

10.9.96: Fertigstellung Version 2.0.4

- Prefs: AltGrOnRightOption (Boolean, Default: 0) neu. Wenn 1, dann wird bei erweiterten
  Tastaturen und aktivierter Recht-Shift-Untersttzung beim Drcken der rechten Wahltaste
  der neue AltGr-Code statt des normalen Alternate-Codes verwendet.
- Mac-XFS: Erkennt nun auch dann eine Datei als archiviert (Archiv-Bit ist gelscht bei
  Abfrage der Dateiattribute), wenn das Backup-Datum _nach_ dem Modifikationsdatum
  liegt (bisher nur dann, wenn beide gleich waren).
- Setzen des FPU-Cookies auf 8 bei 68040-CPUs mte jetzt funktionieren (es war noch ein
  Fehler drin, der den Cookie _immer_ auf 0 setzte, auch bei anderen CPUs/FPUs).
- MagiC 5.04 eingebunden

20.11.96: Fertigstellung Version 2.0.5

- Falls Speed Enabler ("SE") installiert ist, wird dafr gesorgt, da "Zeitabgabe an Mac-Appl."
  ("TimeForMacApps") immer deaktiviert ist
- Beim Performa 6400 und PowerMac 5400 wird das Prefs-Flag "PPCExtMMUTo16MB" immer auf Null
  gesetzt, um Abstrze bei Maschinen mit max. 16MB RAM zu vermeiden.
- Extension-Mapping: Nun knnen auch 4-stellige Extensions (Bsp: .HTML) verwendet werden
  (bisher: max. 3).
  Achtung: Damit ist das Format der 'dMap'-Resource nicht mehr kompatibel zu PC Exchange.
- Falls nicht der Hauptmonitor fr MagiCMac verwendet wird, klappt nun die Wiederherstellung
  des Bildschirminhalts bei Wechsel vom Mac zu MM.
- Ausnahmeliste fr Rechner, bei denen das Prefs-Flag "PPCExtMMUTo16MB" FALSE (Null) sein muss,
  liegt nun in der Applications-Rsrc "16MB" vor. Dort kann sie leicht um die MachineCodes neuer
  problematischer Rechner erweitert werden.
- MgMc-Cookie: Neues Flag: SpeedEmulatorInstalled (Bit 6)
- Prefs: "AutoRestartSpeedEmul" (Default: FALSE) neu: Wenn TRUE, ist nicht das Wechseln zur
  Mac-Seite (per Befehl-W) ntig, um den Speed Doubler zu (re)aktivieren. Leider funktioniert
  dies noch nicht zuverlssig - teilweise strzt MM oder Mac OS dabei ab.
- MgMc-Cookie/ConfigKernel: Wenn SE installiert ist, kann 'TimeForMacApps' nicht auf TRUE gesetzt
  werden.
- vget_rgb (die VDI-Funktion zur Abfrage der Farbtabelle) lieferte bisher immer unbrauchbare
  Werte - sollte nun behoben sein.
- MgMc-Cookie: Version 1.13

14.1.97: Fertigstellung Version 2.0.6

- Verschieben einer Datei von einem Volume auf ein Anderes (z.B. mittels Frename) erzeugt
  nun endlich eine Fehlermeldung (ENSAME).
- Prefs: "IgnoreSpeedEmulator" neu (Default: 0). Wenn 1, wird der SE nicht erkannt und auch keine
  diesbezglichen Sonderbehandlungen vorgenommen.
- XCMDs und MagiC-Programme knnen nun ber den Cookie alle Events, die Mac-seitig auftreten,
  erkennen und ggf. auch ausfiltern. So kann z.B. ein Prg auf Befehl-A reagieren oder HighLevel-
  Events mit anderen Mac-Anwendungen austauschen. (Cookie-Version 1.14)
- MagiC 5.1 eingebunden

27.1.97: Fertigstellung Version 2.1

Known Bugs (14.1.97):
- Speed Emulator (Teil von Speed Doubler: Ein schnellerer 68K-Emulator) kann MagiCMac
  und das Mac OS zum Absturz bringen. Er zeigt sich als "Fehler 11" (bei installiertem
  MacsBug steht der PC hinter einem "_Debugger"-Aufruf auf einer Instruktion mit dem Code
  $FE10).
  Der Absturz tritt immer dann auf, wenn die Mac OS-Funktion Get- bzw. WaitNextEvent
  aufgerufen wird. Ab MM 2.0.6 wird dieser Effekt weitgehend vermieden, kann jedoch
  unter seltenen Umstnden immer noch passieren, so z.B., wenn ein Programm unter MagiC
  mittels der MgMc-Cookie-Funktion "ConfigKernel" #5 MM zum Umschalten auf die Mac-Seite
  (wie bei Befehl-W) veranlat.
- Auf manchen PowerPC-Rechnern treten Abstrze auf, sobald man das Netzwerk (Ethernet?)
  benutzt. Abhilfe wird erreicht, indem man das Prefs-Flag "PPCExtMMUTo16MB" auf Null
  setzt. Der Grund dafr ist jedoch nicht bekannt.
- Symlinks (Aliase) auf Mac-Volumes funktionieren nicht immer korrekt.
- Templemon zerstrt bei jedem Aufruf irgendwelche Speicherbereiche, die je nach
  Memory-Konfiguration zu Abstrzen fhren oder auch unbemerkt bleiben.

END.
