home *** CD-ROM | disk | FTP | other *** search
-
- Things to fix
- ~~~~~~~~~~~~~
-
- 4.aug.93 movem.l d0/a1 if An then something goes wrong...
- fix fixed 5.aug.93
-
- 5.aug.93 Big fixes to the CalcExp to alloc * as CurPc and
- fix << and >> (now only < and >). fixed 7-8.aug.93
-
- 9.aug.93 CalcExp has something wrong in arg2nopar and
- fix following getvalue and nextoperator. It should sense
- end of expression bit earlier, i.e. somewhere here or at
- least after DoCalc. Fixed in late aug by total rewrite
- of calcexp.
-
- 11.aug.93 "asm a.o" , "asm a" both crashed...
- ??? Should not crash even if we try to assemble complete
- garbage.
- don't crash anymore, don't know why. 26.aug.93
-
- 11.aug.93 (10,za0,d0.w) for example is not translated to the new
- fix mode but old disp8(a0,d0) and then zero suppressed An
- is not translated right. fixed 15.aug.93
-
- 16.aug.93 ExpLen and GetSymLen won't handle " and ' marks
- fix right. Fixed in ~20.aug.93.
-
-
- 30.aug.93 1$ bra 1$ tulkitaan virheelliseksi numeroksi.
- fix fixed 5 minutes later.
-
- 26.sep.93 If symbol dumbing on, handles only first section.
- fix fixed little later. In fact it crashed....now fixed.
-
- 28.sep.93 cnop won't work anymore !!???. Won't align right.
- fix was in dc.b 'string'. fixed little later.
-
- 2.oct.93 pass2 errors... when undefined symbols in macro...
- error messages are little bit hmm...not so good.
- part fix little later. Now line refers to file.
-
- 13.oct.93 dc.s %0101010011110111... went to null.
- fix
-
- 14.oct.93 Hmmm... lot's of problems with character handling...
- fix Things get wrong sizes...
-
- 16.oct.93 a dc.l 0
- fix max = *-a
- moveq #a,d0
- a menee relativeksi, vaikka se pitäisi olla abs.
- 17.oct.93
-
- same day dc.b 'a,c' menee 'a ja c' ... korjaaa.....
- fix 17.oct.93
-
- 20.oct.93 68000:lla loppu muisti macrossa, kaatu...
- fixed Oltiin monen macron sisällä...
-
- 21.oct.93 Ei oikein toimi kunnolla kun muisti loppuu kesken...
- fixed Source file jää auki, pientä...
- Muistin loppuminen hoituu nyt. macro rutiinissa ei
- testattu dead end virhettä yhdessä kriittisessä paikassa
-
- 18.nov.93 and.w #~$f1ff,d0 overflow-> argh! Pieniä periaate-
- ongelmia. No fix, not real bug, it is a feature.
-
-
- 20.nov.93 move.l #5,10(a5) won't set offset data.
- fix 2x.nov A silly bug fixed.
-
- 26.nov.93 cnop 0,4
- fix 27.nov ds.l 2
- ei pitäisi tulla cnop koodia. Vaan tulee.
- Oli ongelmia ds direktiivissä.
-
-
- 2.dec.93 tst.l (10) goes to (BD,An,Xn) mode instead of
- fix absolute word addressing. Check Optimizer.
- ParseAm had little problems, fixed. Optimizer ok.
-
-
- 6.dec.93 local symbols won't work. (.abba equ 10).
- fix little bug, now does
-
- 7.dec.93 F040 liput fpu käskyihin!
- fix
-
- 14.dec.93 LineCount ihan päin persettä.
- fix 21.dec.93 nea9 uupui globalista.
-
- v1.39
- 15.jan.94 include ilman parametria kaataa...
- fix tarkistus puuttui yhestä paikkaa
-
- v1.40
- 21.jan.94 bss hunk chippiin tai fastiin kopioi datan.
- fixed
-
-
- 7.apr.94 Huh! (data,An,Xn) generates always D0 in Xn when
- fix 'data' is defined after that line. Seems to be undef
- solving problem. Big BUG!!!.
- Hmm, find more problems from the Opt module. fixed.
- This one was in PutEa routine. It didn't set extension
- word if undefined or relative disp8(An,Xn)
-
- 7.apr.94 more problems (.tbl,d0.w) went to disp8(An,Xn) urf.
- fix ea handling had some problems
-
- 29.may.94 include a:abba.i causes problems: Treats : as a separator
- fix not as a device name.
- Tarkistaako HandleFile että file eikä dir, myös inc_hadnlefile ?
-
- same day Kun macro jo määritelty, macroa aletaan kääntämään
- fix normaalisti.
-
- same day ifle tai ifgt häikkää... kokeile devices/prtbase.i
- fix ift did signed check
-
- sameday Z:lla alkavat symbolin nimet tulkataan ZAn rekisteriksi.
- fix huh huh. Taitaa olla aika päästä eroon koko Zan hommasta.
- fixed
-
- 2.jun.94 movep d0,0(a0) ei salli 0:aa displacementiksi.
- fix Vika on siinä että SNMA optimoi nollan pois.
-
-
- same day Jos bsr.l somewhere toiseen moduleen, pitäisi varoittaa!
-
- 3.jun.94 dc.b 'abba'10 niin tulee 'abba10' stringgi.
-
- 13.jun.94 abba = label+2 , jos label on osoite niin menee
- silti absolute symboliksi. Uupui yksi expflag asetus.
-
- 17.jun.94 ins_size is sometimes long. Make sure it is took for
- fix granted. FIX. yes no, problems... direktiivit joissa
- ins_size on long eivät luo undef:fejä.
-
- 18.jun.94 Varmista buffered filekäskyt, jos sattuu olemaan ei
- fix bufferoituja niin flush() väliin. tarkistettu.
-
- same day dc plus muut vastaavat eivät putsaa ea2:en mode kenttää
- fix ja jos edellinen käsky sattui olemaan semmonen missä
- tämä kenttä oli käytössä (siisjoku kahden operandin käsky,
- direktiivejä ei käsitellä HandleEA:lla joka asettaa ne)
- niin makeinst tottakai otti sen huomioon.
- Selvittiin asettamalla nea2+eff_mode(a4) -1:ksi.
-
- 23.jun.94 equ_c ei tajua tarkistaa josko symboli sattuisi olemaan
- tyyppiä REL-REL, joka täytyy lisätä undef listaan mutta
- ei ole silti relative. Tämä toimii V1.70:ssa mutta siinä
- vissiin oli jotain muuta häikkää...hitto....
-
- 11.JUL.94 WriteXdef kirjoittaa xdef ext hommelit jokaiseen sectioon.
- fix Korjattu myös setxdef jos xdef symboli oli undef niin
- virheviestiin tuli kaikki koska FailPtr osoitti
- tiedoston loppuun.
-
- 13.jul.94 luo xref rakenteita (hunk_ext) object koodiin
- fix turhaan jos symbolin käytön välissä toinen symboli.
- pitäisi laittaa samaan nippuun.
-
- 18.jul.94 Listing file: eka osa menee pikkasen liian pitkälle.
- fix
-
- 21.jul.94 section : StripQuot ekasta paramerista, tarkista myös
- fix jos ei koodia ennen ekaa sectionia. Itse asiassa koko
- hunkki homma on pikkasen turhan sekava.
-
- 27.jul.94 Hihhei (expression)(An[,Xn]) ei oikein skulaa. Taidanpa
- fix myös tietää miksei. Parseri luulee uudeksi syntaksiksi ja
- ei oikein snaijaa että tuo onkin vanha osoitusmoodi.
-
- 8.aug.94 ObjectCode writer varaa muistia BSS hunkille !
- fix
-
- 8.Aug.94 jos index scale niin ei tarkista tukeeko cpu sitä.
- fix
-
- 8.aug.94 BSS, ds.l 100000 niin väärä määrä (-2). Jaa-a. Luultavasti
- fix word-lng ongelma tai sitten ei...CNOP ongelma.
-
- 9.aug.94 Listing file date stringissä roskaa.
- fix
- 9.aug.94 asm.xdme argumenttien parsing ei snaijaa "ram disk:" iä.
-
- 10.aug.94 040 specified code ei salli mitään, hey ho!.
- fix uupui cpu_A määrittelystä.
-
- 10.aug.94 EXG a2,a4 menee exg a4,a2. Tosin enpä tiedä onko tuolla
- fix mitään väliä.Täytyy tarkistaa.
- Ei enää.
-
- 10.aug.94 lsr.w (sp) väärin.
- fix mokia handlerissä.
-
-
- 14.aug.94 Incbin label.
- fix Ei asettanut SetRelSymb.
-
- 14.aug.94 Addgb läimii päätason symbolit ennen includeja.
- fix Asettaa päätason symboleihin global lipun.
-
- 15.aug.94 Muisti loppuu-> kaatuu. Perhana. Mikähän siinä nyt on.
- Muutama paikka löytyi, mistä kaatui.
-
- 16.aug.94 (a3,d0.w) ei sallittu 68000 modessa. Periaatteessa oikein
- fix(?) mutta toisaalta tosta voi kyllä generoida 68000
- ymmärtämän 0(a3,d0.w) moodin.
-
- 16.aug.94 .s pääte ei toimi enää!!!
- fix
-
- 16.aug.94 fmovecr läimiii turhaa kamaa (luultavasti extenended)
- fix
-
- 18.aug.94 reg directiivi ei putsaa ea tai operands rakenteita.
- fix Oli tse asiassa siinä että rts (+ kumppanit) ei putsannut
- operand taulua.
-
- 19.aug.94 WB alku ->enforcer hit.
- fix
-
- 2.sep.94 bsr toiseen sectioniin optimoidaan, oivoi.
- fix
-
- 3.sep.94 divu.l....argh!
- fix HYPPY Väärään paikkaan.
-
- 3.sep.94 index scale sallitaan mc68000 modessa, shit.
-
- 9.oct.94 Multilevel opt ei toimi koska olen unohtanut ins_srcea
- fix? ja ins_destea kenttien muutokset jos optimoidaan. Tällöin
- seuraavilla optimointikerroilla saatetaan kohdella väärin
- optimoitua address modea koska se on jo optimoitu.
- Tämä on ilmeisesti korjattu kokonaan.
-
-
- 14.oct.94 Expression: (A)A (esim) jää ikuiseen rekursioon. Umh...
- fix Täytyy vauhdittaa sen expression handlerin
- uudellenkirjoittamista. Siinä tuo hoituu elegantimmin.
- Nyt sen detectoiminen on aika työlästä. Luulisin.
- GetExp ei tajua poistaa sulkuja ja niin se kutsuu
- ainiaan.
- Uusi expression handleri tehty.
-
- 20 oct.94 Jos on kytketty label semmoiseen käskyyn joka on poistettu
- eli siis niin...jaa...tarkistahan miten tämä menee.
-
- 24.oct.94 Jos ei ollenkaan koodia niin 14 NOP:ia. (?!?).
- FIXED Joo oli unohtunut putsaus yhen testin jälkeen, korjattu
- Opt modulissa, o_cnop_c.
-
- 26.jan.95 local label .l menee garbageksi ja Enforcer jos
- FIXED esim " bsr .l"
- Syy oli explen2:n force word/long tarkistus joka
- luuli tätä forceksi.
-
-
- 27.jan.95 If CS=OFF (case-sensetive symbols) xdef <name> fails.
- fixed SetXDef called FindSymb2 instead of FindAbsRel which
- handled case-sens. detection.
-
- 27.jan.95 Jotain vikaa oli jossain pc optimoinnissa jos osoite oli
- eri hunkissa tai jotain.
-
- 6.feb.95 Include directory ei mene snmaoptions filestä.
- fixed
-
- 8.feb.95 VALUE equ.s INTVALUE olis kiva jos toimisi
- tyyppikonversiolla, ainakin jos INTVALUE todella on
- integer. fix
-
- 13.feb.95 bsr optimoidaan joskus byteksi ja sitten se ei
- mahdukkaan loppujen lopuksi.
- cnoppeja ja stringejä. Luultavasti joku paddaus
- kasvattaa sen isommaksi.
-
- 20.feb.95 dc.b 0, dc.l 0, dc.b 0,0 niin ensimmäisen dc.b:n
- fixed ? alignaus päätyy myös jotenkin toiseen dc.b:een jonka
- koko menee kolmeksi. Argh.
-
- 22.may.95 ctrl-c (break) tulostaa myös kaikenmaailman varoituksia.
- Olisi ehkä parempi ettei...
-
- 26.may.95 ext_abs ja ext_def:t menee ristiin. Argh! Ei ole V1.97:ssa.
- fixed. Joku kumma beq/bne muunnos. Korjattu.
-
- 30.may.95 relative-relative symboli on abs mutta xdef asettaa sen
- fixed silti ext_def (relative).
-
- 6.jun.95 bfextu hommissa jotain vikaa. Wrong number of operands.
- fixed inst.i datoissa väärin maxoperands.
-
- 6.jun.95 {0:2} päättyvät bitfield hommat aiheuttavat väärän virheen.
- fixed
-
- 11.jun.95 ADDGB hukkaa symboleita. Jos ekassa filessä muutama
- fixed symboli määritelty niin seuraavaassa filessä ekan
- includen jälkeen ei ensimmäisen filen symbolit ole
- olemassa.
- abshasht taulua ei auta putsata, kun ollaan siirretty
- symbolit MoveHash:lla gb tauluun.
- Samaa pätee macroihin, MoveHash siirtää nekin.
-
- 26.jun.95 Parsing source vaiheessa muistin loppuminen aiheuttaa
- fixed Missing operand virheen. Ainakin jva:lla.
- dc.b <lista numeroita>.
- Luultavasti korjattu, yksi palautusarvo -1:stä 1:ksi.
-
- 26.jun.95 Immediate data doesn't fit in word ja byte viestit.
- fix Niitä ei tule jos määritellään myöhemmin. (Ratkaistaan
- pass2:ssa). Eikä dc.w :ssa ollenkaan. Koko homman voisi
- laittaa warning:ksi jonka voi saada pois päältä.
- Nyt virheinä, jotka saa pois päältä.
-
- 26.jun.95 Macrosta poistuttaessa , palauta assembly nest count
- fix siksi mikä se oli ennen macroa.
- Palauttaa jos ENDC:tä puuttui macrosta. Toisinpäin
- ei voi toimia, tosin se onkin jo virhe sorsassa, ja
- siitä tulee ENDC without IFxx virhe.
-
- 12.jul.95 data(An) kun "data" on label menee silti pc-relative
- muodossa. Pitäisi käsitellä offsettina hunkin alusta,
- mutta ei relocausta. Tässä kyllä on ongelmia, kun ottaa
- huomioon että se on pass2:n ongelma tuo "data"n
- lopullisen arvon laskeminen. No, sinne rr_<jotain>
- rutiiniin vain tarkistus onko todella pc-relative.
-
- 15.jul.95 SelfChecksum tarkistaa nyt SegListin avulla.
- fix Löytyy pr_CLI->cli_Module tai WBStartup->sm_Segment.
-
- 25.jul.95 extended data type isoilla/pienillä numeroilla. 1e-4931.!
- fix Ei mene nollaksi.
- Oli ihan sekasin ne atoe ja atod ja atos rutiinit,
- jos oli exponentti. Pitäisi varmistaa noi lukualueet...
-
- 5.aug.95 BTST.W ei virhe.
- fixed Nyt on.
-
- 12.aug.95 Bugireportti jossa paljon asioita...:
-
- :--------------------------------------------------------------------
- movec sp,d0
- is not flagged as an error.
- FIXED. (SP=a7!) Liian vähän testiä.
- :--------------------------------------------------------------------
- fsave -(a7)
- produces:
- "Src operand not legal for the inst."
- FIXED -- data error
- :--------------------------------------------------------------------
-
- bfffo d4{0:32},d0
- produces:
- "Bitfield width has something wrong."
- FIXED -- 32 = 0, mutta vertailtiin 31:een
- Lisätty ISC tarkistus
- :--------------------------------------------------------------------
-
- move.l (zd4),d0
- produces:
- "Symbol undefined" (referring to zd4)
- ??? (za0) ajaa saman - mutta kai toi periaattessa
- pitäisi hyväksyä.
- fixed (?)
- :--------------------------------------------------------------------
- cmpi.l #$12345678,8(pc)
- produces:
- "Dest operand is not legel for the inst."
- FIXED -- ei tajunnu ollenkaan. 000:ssa
- ei sallittu ja mun vanha 030 opas ei
- tiennyt.
- :--------------------------------------------------------------------
- pack -(a1),-(a2),#$2121
- produces:
- "Value is too big for byte." (same for UNPK)
- FIXED -- pieniä koko ongelmia.
- :--------------------------------------------------------------------
- move.l ([$1234],d3.l,outdisp),d0
- produces:
- "Data cannot be relative." (Why? It could be relocated.)
-
- Can it be used for something useful ? I mean, the way how the
- outer displacement works. It is added to the value which is
- fetched from the memory. I can't figure out any useful
- purpose for relative outer displacement.
-
- :--------------------------------------------------------------------
- move.l ([$1234],d3.l,$abcd),d0
- results:
- 2030 39A7 1234 0000 ABCD (Outer disp. could be shortened to word.)
-
- No. Outer displacement is sing-extended and then this number
- would turn out to be negative. On the other hand, it is also
- positive and out of 16 bit signed range. Because all internal
- math in snma is 32 bit, this number is positive, $ffffabcd
- does the trick, if negative number is what is wanted.
- NOFIX
- :--------------------------------------------------------------------
-
- What I'm getting these from is a test file for Motorola's as68k
- assembler. The test file is based on the 68020, so I didn't check any
-
- XREF 9:asdf
- causes:
- GURU #80000004
- FIXED, un-balanced stack
- :--------------------------------------------------------------------
- chk.l (a6),d0
- causes:
- "Instruction does not support this size."
- FIXED , manuska virhe.
- :--------------------------------------------------------------------
- chk2.b (a0),a0
- causes:
- "Instruction does not support this size."
- FIXED. Oli myös cmp2.b kun An. An kun ei
- normaalisti huoli byteä. Piti tehdä erikseen
- checkealeg_cmp2, joka ei tarkasta sitä.
-
- :--------------------------------------------------------------------
- moves.b a0,(a2)
- causes:
- "Instruction does not support this size."
- FIXED. Sama vika kuin chk2.b :ssä, tuossa yllä.
-
- :--------------------------------------------------------------------
- tst #immed
- causes:
-
- "Src operand not legal for the inst."
-
- NOTE: The 68020 users manual says it's not valid, but the
- M68000 Family Programmers reference manual say it's valid for
- 020-040 (it doesn't have 060).
- FIXED
- :--------------------------------------------------------------------
- cas2.w d0:d1,d0:d1,(a5):(d0)
- causes:
- "Third operand is not right."
- FIXED. Tää oli ihan perseellään.
- :--------------------------------------------------------------------
- tst index+*(PC)
- causes:
- "Garbage in expression."
-
- :--------------------------------------------------------------------
- fbra label
- causes:
- "Unknown op-code."
-
- NOTE: Generally accepted as a synonym for "fbf".
- FIXED , lisättiin
- :--------------------------------------------------------------------
- fdbra d0,label
- causes:
- "Unknown op-code."
-
- NOTE: Generally accepted as a synonym for "fdbf".
- FIXED , lisättiin
- :--------------------------------------------------------------------
- fsave -(a4)
- causes:
- "Src operand not legen for the inst."
- FIXED, inst data error
-
- :--------------------------------------------------------------------
- pbcs label
- causes:
- "Unknown op-code."
- FIXED ,, manuska virhe
- :--------------------------------------------------------------------
- pbcc labepbcsl
- causes:
- "Unknown op-code."
- FIXED , manuska virhe
- :--------------------------------------------------------------------
- pdbcs d0,label
- causes:
- "Unknown op-code."
- FIXED ,, manuska virhe
- :--------------------------------------------------------------------
- pdbcc d0,label
- causes:
- "Unknown op-code."
- FIXED ,, manuska virhe
- :--------------------------------------------------------------------
- psave -(sp)
- causes:
- "Src operand not legal for the inst."
- FIXED , osoitusmuodot sekaisin. Koodi myös väärin,
- kuten myös frestore käskyssä.
- :--------------------------------------------------------------------
- pscs (a6)
- causes:
- "Unknown op-code."
- FIXED ,, manuska virhe
- :--------------------------------------------------------------------
- pscc (a5)
- causes:
- "Unknown op-code."
- FIXED , manuska virhe
- :--------------------------------------------------------------------
- ptrapcs
- causes:
- "Unknown op-code."
- FIXED , manuska virhe
- :--------------------------------------------------------------------
- ptrapcc
- causes:
- "Unknown op-code."
- FIXED , manuska virhe
- :--------------------------------------------------------------------
- pmove psr,d0
- causes:
- "Src operand not legal for the inst."
- Pitää paikkansa 030:lle. 68851 sallii tämän.
- FIXED -- uupui hyppy.
- :--------------------------------------------------------------------
-
-
- 13.aug.95 "Instruction not supported by current cpu" viestin
- FailPtr menee ekaan operandiin
-
- 13.aug.95 Bitfield width ja offset arvoja ei asetata pass2:ssa.
- fixed
-
- 14.aug.95 xref lab; ";" mukaan nimeen. Aijai...
- FIXED puuttui wordlencomma rutiinin taulukosta.
-
- Katohan SetDataA0. Sen voisi kai tehdä pikkasen nopeammin.
- siel on lea 8(a0),a0 esim..
-
- 23.aug.95 (An,Xn) ei sallita vieläkään jos 68000 moodi päällä.
- fixed Senkun laitetaan samalla tavalla kuin jos BD olisi
- forcattu byteen (uh, eihän sitä voi tehdä?).
-
- 29.aug.95 pc-relative optimointi optimoi "tst label" vaikka
- FIXED cpu type on 68000/010.
-
- 13.sep.95 btst #liianiso,<ea> voisi heittää varoituksen.
-
- 18.sep.95 macrossa: \*upper(\1) kun \1 = '' (tyhjä , ei ole)
- fixed katkasee macron liian pian. a0:aa ei kasvatettu
- jos tyhjä.
-
-
- 20.sep.95 (BD.l,An...) (BD.w,An...) forcing ei toimi enää!
- fixed Tai sitten optimoija ei tajua sitä enää.
-
- 21.sep.95 Urgh! Random crash. Kaatuu satunnaisesti...guru...
- line-f tai buserror. Koodi karkaa. Ei ehdi kääntää
- mitään (? luulisin...Parsing source viestiä ei tule).
- Tämä on aika paha. Erittäin todennäköisesti snma:n vika.
- Ensi epäilys: option file lataus, tai jotain muuta
- startup sotkua. DOSsi kai sekoaa. Kenen lie vika?
- Löysin yhden paikan jossa snma luki muistipaikasta jonka
- osoite otettiin stringistä. Ties mitä se teki jos luki
- sieltä sun täältä.
-
- 24.sep.95 Relative Outer Disp mahdolliseksi.
-
- 28.sep.95 @label
- fixed <jotain>
- bra @label
- tuottaa vikahypyn. Vika @ merkissä.
-
- 30.sep.95 <ea>,{num:num} mahdolliseksi (pilkku!)
-
- 30.sep.95 QUIET ei toimi.
- fixed Mitäköhän oli mielessä tonkin kanssa. Esti vain startup
- viestin. Kai jotain Arexx juttuja...(?)
- Hällä väliä, nyt se estää kaiken shell outputin.
-
- 30.sep.95 equr ztab ; tst.l (ztab) ei toimi. Lukee kai z:n pois.
- fixed fixed. Pikku muutoksia getar and getindexreg rutiineihin.
- Parseri on IHAN KAAMEA ! Kirjoitahan uusi.
-
- 30.sep.95 Arexx command: set tabs 1 ol 4.
- fixed jäi luuppiin ikuisiksi ajoiksi.
-
- 30.sep.95 Outer displacement ei asetu extension wordiin !
- fixed Oli vähän häikkää.
-
- 4.oct.95 movec An,tc
- fixed reports as an error for any source address register
-
- Uh...ei ainakaan tällä hetkellä. Tosin 2.02:ssakin on.
-
- movec d5,itt0
- assembles but generates code for
- movec d5,tc
- independent of the specified control register.
-
- Joo...nää toimii nyt. En tosin tajua miksi..,en ainakaan
- muista koskeneeni movec koodaukseen. Ehkäpä olen... tai
- sitten jotain muuta parseam:ssa fiksasi sen.
-
- 4.oct.95 memory usage päin peetä arexx modessa, kun shell output
- fixed päällä.
- Korjattu kai jotenkuten putsaamalla MaxUsedMem
- InitDataArea:ssa.
- 5-nov-95 kaks bugia. dloads:snma_bug ja snma_bug2
-
- 28-dec.95 CASESENS OFF ja xreffit ei skulaa. Symboleita ei tunnisteta.
- fixed
-
- 13-aug-96 move.l label,10(a1) when pc opt on optimizes
- FIXED 10(a1) to (a1). Luultavasti siinä kun siirretään kybä
- lähemmäksi jotenkin väärin jolloin otetaankin nolla.
- Tai jotain vastaavaa. Joo, optimoinnissa oli virhe.
-
- 16.aug.96 If a symbol is defined as XREF, an equal symbol in the source
- should cause an 'double symbol' error.
-
- 16.aug.96 XDEFit aina ekaan hunkkiin.
- FIXED Otettiin XDEF:in paikasta hunkkinumero, eikö sen symbolin.
- Helppo korjaus, SetXDef:iin vain hunkkinumeron siirto.
-
- 20.aug.96 0(a0,d0) menee 020 muotoon vaikka 000 enabloitu myös.
- Ongelma jos koodissa sekaisin 000 ja 020+ kamaa.
- Varoitettu kyllä mutta ehkä voisi helpottaa jokin
- systeemi.
-
- ------- MM fixes:
-
- 20.11.00 fixed quote parsing routine:
- rev $110 "dc.b 'txt ''%s'''"
- was erroneously assembled as "txt '%s''"
-
- 21.11.00 fixed various bitfield instructions, which all broke on
- rev $111 pc-relative addressing modes; f.ex.:
- "bfffo ([lab,pc,d0.w],20){0:2},d0"
- (bad source ea table)
-
- fixed bug in 8-bit displacement routine:
- "pmove.w mmusr,(1,a0,d0)"
- now assembles correctly
-
- 22.11.00 fixed bugs in optimizing code - m_bd32od16 and m_bd32od32
- rev $112 routines; code like
- "btst d1,([lab,pc],a0,2)"
- now assebles correctly (copyword routine trashed lab list)
-
- 24.11.00 fixed \*TIME() macro routine crash (movem's were not in sync)
- rev $114
-
- 28.11.00 fixed pc-relative calculations of ds, dx, dcb and incbin:
- rev $116 " moveq #s,d0
- rts
- b incbin bin
- s=*-b"
- now "s" is calculated correctly instead of being zero
-
- 30.11.00 fixed heavy bugs in complex addressing modes like:
- rev $117 "movea.l ([lab-DT,A4],8),A5"
-
- fixed relative lab calculation in different sections (section
- inst code creator didn't reset pc in ins struct)
-
- MOVEM opt is now OFF by default as it can change CCR hence
- should be considered dangerous
-
- 2.12.00 fixed bug in ftst code, added "mc68851" and "mc68060"
- rev $118 directives (though no real 68060 support yet)
-
- 10.12.00 fixed FPU code (atod routine bug), inlined code from nsamlib
- rev $119
-
- 13.12.00 fixed bug in dx code
- rev $120
-
- 18.12.00 fixed assembling of absolutes in memory indirect modes, like:
- rev $121 "move.l ([lab]),d0"
- enabled optimizing of above to pc-rel mode, if possible
-
- 20.12.00 fixed bugs in supressed pc (zpc) mode:
- rev $122 "move.l (lab,zpc,d0.w),a0"
-
- fixed bugs in address reg index mode:
- "move.l (lab,a0.w*2),d0"
- and added opt to pc-rel if possible
-
- 7.1.01 fixed heavy bugs in indirect modes where both OD and BD were
- rev $126 labels:
- "move.l ([lab,a0,a0],lab2),([lab,a0,a0],lab2)"
-
- DATE macro in v (version) mode strips leading zeros now
-
- 22.1.01 now dx directive is supported only when building an exe file
- rev $128 (fixes nasty bugs when using linker)
-
- 12.2.01 added JOPT switch to opt file and commandline
- rev $130
-
- 19.2.01 once again fixed StripQuot() ("" should now work as supposed)
- rev $131 changed power operator from '^^' to more common '^'
- source no longer needs a linefeed or CR at end to work
-
- 22.2.01 enhanced HandleComp() to allow relaxed syntax in An indirect
- rev $132 modes, like An and BD swapped (Ax,BD) f.ex: 'lea (a0,10),a0'
-
- 10.6.01 fixed an old bug in opt code: 'tst.l ($80,ax,dx)' was
- rev $133 assembled as 'tst.l (-$80,ax,dx)'
-
- 14.6.01 reworked arexx SET cmd
- rev $134
-
- 15.6.01 fixed nasty bug in read template routine (PORTNAME+AREXX)
- rev $135
-
- 22.6.01 rewritten cmdline and opt file parsing routines, changed some
- rev $136 options to toggles, unified opt names
-
- added auto-alignment to ds.b dcb.b and dx.b directives
-
- 21.7.01 small internal fix (wrong error counter in REXX mode)
- rev $137
-
- 23.7.01 enhanced optimizing: more abs can be converted to pc-rel now
- rev $138
-
- 31.8.01 fixed some macro dependencies, added '.q' size to pmove, fixed
- rev $140 xdef bugs with some instructions
-