RE: A86: 85 to 86 asm converter


[Prev][Next][Index][Thread]

RE: A86: 85 to 86 asm converter



Although the instruction set is the same, some RAM locations are different as 
well as ROM calls, and the memory is paged. A converter would only work with 
the simplest of programs.
________________

Jeff Tyrrill
http://tyrrill-ticalc.home.ml.org/
http://ti-files.home.ml.org/


-----Original Message-----
From:	owner-assembly-86@lists.ticalc.org  On Behalf Of James Yopp
Sent:	Thursday, July 31, 1997 12:25 PM
To:	86 Assembly list
Subject:	Re: A86: 85 to 86 asm converter

>	There has been a lot of talk about a converter for 85 to 86 asm 
>programs on this list and many others. Yes you could change all the 
>adresses, but to my understanding it is not possable to make such a 
>converter due to diffreneces in how the asm works. Heres and example of 
>what I'm talking about (this is not real asm funtions it just makes my 
>point clear). Lets say in order to add 2 numbers in 85 asm you have load 
>your number into DE its added to B then stored in A. On the 86 it may be 
> that you have to load your number to HL then its added to DE then stored 
>to A. A converter would not be able to figure out which register the 
>programer wanted in where. Code would have to be ajusted. It would take a 
>human to figure out the code line by line and figure out what the 
>programmer ment in every instance. It really makes a converter 
>impossable. 

This couldn't be more wrong.  The only thing here that makes any kind of 
difference is the ROM ROUTINES, which could be adjusted using useless 
bytes (like ld a, a) and then using a call to a SHELL which would run the 
programs.  If the shell were, say, 4000 bytes, we would load the other 
code in after the shell and call it, changing LD DE, (PROGRAM_ADDR) to ld 
DE, $D748+ShellLen.  Then, things like ROM_CALL(ADJUST_A_HL) would be 
changed to call back to places in the shell code, not to the ROM.


James Yopp
jyopp@pobox.com
"Time is the fire in which we burn."