Hi, Ihr Coder da draužen! Das hier ist die fr den Falcon030 angepažte Version vom TurboAss, die jetzt auch ein paar spezielle 68030er Befehle und Adressierungsarten kann. Folgendes hab ich daran ge„ndert: ********** * Was schon gemacht wurde (in chronologischer Reihenfolge) * - Wortweise vor/zurck mit Control + Rechts/Links * - Undo innerhalb eines PARTs baute Scheiže (klappt immer noch nicht ganz) * - Font beim Laden/Saven nicht mehr distortet (Buffer vergr”žert) * - Debugger nachladen funktioniert wieder (>s_load_dbg, Buffer vergr”žert) * - Kein Defaultfilename ('noname.src') mehr (war recht st”rend) * - Infobox, damit die Leutz Bescheid wissen, daž gepatched wurde * - Skalierung bei indirekter Adressierung * - TST jetzt auch PC-relativ * - fselexinput klappt jetzt wieder mit dem FALCON-TOS * - BSS l”schen, damit mit Atomik gepackt werden kann * - movec mit CAAR, CACR, DFC, SFC * - Zeile mit 'PART' l”schen erlauben, wenn PART offen * - Hardwareuhr auf dem FALCON030 erkennen (andere Adresse als im MSTe!) * - movec auch mit VBR, MSP, ISP, USP * - mulu.l / divu.l * ****** 1. 'Ver”ffentlichung' ****** * - rtd #offs (naja, wer's braucht :-)) * - TRAPcc (dito) * - extb.l * - TRAPcc.W/.L #x * - Fehler bei muls.l # /divs.l # behoben * - Adressierung (bd.x,An,Rm.y*s) (angefangen) * - Optimiert auch nach TST adr(PC) * - (bd.x,ZAn,Rm.y*s) und (ZAn,Rm.y*s) werden jetzt angenommen * - BASE An,adr und (bd.w,An,Rm.y*s) klappt jetzt * - Optimierung nach 68030 ber OPT W und O steuerbar (* ein, + od. - aus) * - Kein Shortwarnung mehr bei andi.l #x,adr/addi.l #x,adr etc. * - Bcc.L/BRA.L/BSR.L * - Block move -> Source changed! * - (bd.x,PC,Rm.y*s) * - BASE An,adr und (adr.L,An,Rx) funzt jetzt auch * - PARTs auch nach Zeile 32767 noch klappbar ;-) * - CNOP ??,0 wird nicht mehr angenommen (vorher: 2 Bomben beim Assemblieren) * - richtigen PC-Offset berechnen (ALT-P & Einsprung aus dem Bugaboo) * - CNOP ohne gelegentliches Space hinter'm Komma * - bei Platten mit Sektoren >4kBytes keine Sektoren 'reinladen (Mediachange) * - korrekte Planeoffsets auch mit 4 und 8 Planes * - Flimmern beim Bewegen der Maus behoben * - Fehler bei Undo behoben ********* z.T. wurden auch Bugs, die in der alten TurboAss-Version drin waren, behoben (da sind die Programmierer meist etwas mit ihrer Registerbelegung durcheinandergekommen :-)) Zur Adressierungsart "(BD.x,An,Rm.y)": Das Basediplacement kann Byte, Word od. Long sein oder auch einfach weggelassen werden (bei Byte wird in die vom MC68000 bekannte Adressierungsart offset(An,Rm) gewandelt). Soll das Basisregister An nicht ausgewertet werden, so ist ein Z voranzustellen (Bsp: (adr.l,ZA0,D5.w*4)); das war zumindest die Notation vom Peacebug (Hi Emanuel!) (ich hatte sonst keine andere Quelle, das User's Manual schwieg sich aus). Es ist also neuerdings m”glich, Datenregister indirekt zu adressieren (z.B. (ZA0,D3.l)) oder Adressregister relativ mit Longoffset (vorher: nur Word bzw. nur Byte, wenn noch ein Indexregister beteiligt war) (dito fr PC-relativ!) Optimierungen: Im Moment wird die Adressierungsart (bd.x,An,Rx) nicht optimiert, falls BD auch Word oder Byte sein k”nnte bzw. wenn das Offset zu grož ist, dann wird bislang nur von .w nach .l 'optimiert'. Gleiches gilt auch fr (bd.x,PC,Rx)! Die Optimierungen k”nnen via OPT O und OPT W kontrolliert werden. O- bedeutet -wie vorher- keine Optimierung, O+ normale (68000er) Optimierungen und O* optimiert u.U. nach 68030er-Code. Dies betrifft im Moment zwar nur tst adr -> tst adr(PC) aber es kommt evtl. noch 'was nach ;-) Opt W* hat noch berhaupt keine Wirkung. Defaulteinstellung (wenn kein Opt O/W angegeben ist), ist * also Vorsicht bei Sourcen, die noch immer auf dem 68000er laufen sollen und kein Opt O angegeben haben! Aufgrund der fr den 68000er zugeschnittenen internen Struktur des TurboAss war es mir bislang leider nicht m”glich, die Bitfieldbefehle, sowie die doppelt indirekte Adressierungen einzubauen. Der TurboAss erlaubt n„mlich max. 2 Symbole od. Formeln je Zeile (durch die doppelt indirekte A'art sind bis zu 4 je Zeile denkbar), sowie eine Beschr„nkung der Befehlsl„nge auf 14Bytes/Befehl (22 sind mit der doppelt indirekten A'art m”glich!) Wie und ob ich dies noch irgendwann l”sen kann, ist fraglich :-( Folgendes ist noch geplant, die Umsetzung jedoch noch nicht sicher. ********** * Was noch gemacht werden muž (unsortiert): * - Optimierung bei (bd.x,An,Rm)! * - Optimierung bei (bd.x,PC,Rm)! * - Outputname etwas l„nger * - IBYTES: l„ngeren Namen erlauben * - bei mehreren Pfaden alle durchsuchen * - Fehler bei ClrHome (manchmal wird eine falsche Zeile angezeigt (wg. PARTs!)) * - Doppelt indirekte Adressierungen * - Externe Programme aufrufen ********** Die entsprechenden Anpassungen der Befehle im Bugaboo sind in Arbeit. Es ist, durch die recht tiefen Eingriffe in die Struktur des TurboAss' im Bereich des m”glichen, daž bestimmte Befehle falsch assembliert werden! Im Zweifelsfall sollte man den Fehler auch im Assembler suchen und nicht nur im eigenen Programm! ************************************************************ Wichtig: TurboAss und Bugaboo unterliegen nach wie vor dem Copyright von SigmaSoft. Derzeitiger Status von beiden ist Shareware, wobei SigmaSoft jedoch nicht mehr existiert und daher auch keine Sharewaregebhren mehr verlangt. Die 030er Version darf mit Genehmigung von M. Fritze ver”ffentlicht werden.Die Distribution durch z.B. Mailboxen ist erlaubt, solange damit kein Profit gemacht wird (also keine Coverdisk von irgendwelche Magazinen, darf nicht auf CDs und dergleichen!). Ich bernehme keinerlei Verantwortung fr die Fehlerfreiheit dieser Version! Ich will auch kein Geld fr diese Patche, das w„re h”chst unfair SigmaSoft gegenber. ************************************************************ das war's bye Achim (SCY/TSCC) Kontakt: Achim Settelmeier Rlzheimer Str. 39 76756 Bellheim Email: achim_settelmeier@ka2.maus.de Die Adresse von Sigmasoft oder besser gesagt, das, was noch von SigmaSoft brig ist (seufz), steht in der Originalanleitung!