26.01.2015, 15:00
achso ja, man muss dann checken, ob der datentyp anders ist und dann halt entweder in der lokalen oder globalen liste suchen. ginge dann also nicht die func fetchvar zu erweitern
im original source ist dann 8f4e also für local vars. ich copiere die old source labels und kommentare im neuen source dazu. komisch wieso er in der globalen liste sucht. unten bei .hendrix sucht er in der localen. naja muss man mit testprogram ausprobieren, wie es genau funktioniert
macht er also auch im originalsource, dass er für locale vars in der globalen liste sucht. wahrscheinlich ist varbase die Liste der globalen variablen und firstglob die liste der shared variablen die auch in einer funktion gelten
fvarlocal lea firstglob,a2
bsr findvar
.more bne .hendrix
move.b flagmask+1,d1
move.b 7(a2),d3
eor.b d3,d1
beq fvarfound
bsr findlab
bra .more
.hendrix move #-1,varmode
move varoff,-(a7)
move locvaroff,varoff
lea firstlocal,a2
bsr fvarback
move varoff,locvaroff
move (a7)+,varoff
rts
im original source ist dann 8f4e also für local vars. ich copiere die old source labels und kommentare im neuen source dazu. komisch wieso er in der globalen liste sucht. unten bei .hendrix sucht er in der localen. naja muss man mit testprogram ausprobieren, wie es genau funktioniert
macht er also auch im originalsource, dass er für locale vars in der globalen liste sucht. wahrscheinlich ist varbase die Liste der globalen variablen und firstglob die liste der shared variablen die auch in einer funktion gelten
fvarlocal lea firstglob,a2
bsr findvar
.more bne .hendrix
move.b flagmask+1,d1
move.b 7(a2),d3
eor.b d3,d1
beq fvarfound
bsr findlab
bra .more
.hendrix move #-1,varmode
move varoff,-(a7)
move locvaroff,varoff
lea firstlocal,a2
bsr fvarback
move varoff,locvaroff
move (a7)+,varoff
rts