Trying to learn some simple assembly in order to gear up for my long term project -
I have this book "The Complete Macinotsh Assembly Language Programming" by Dan Weston, and the examples assume you have the 2-disk early version of Macintosh Development System for Mac 128k and 512k, which I was able to secure. However, even the simplest program can't find the MacTraps.D from my include instruction.
So, I tried to make it work in an asm {} block in THINK C, and that works.
Moving on to the next program, I encounter some difficulties with THINK C:
-labels don't work as is, ie MainLoop: they have to be preceded with the @ symbol
-hex numbers have to be changed from #0000FFFF to #0x0000FFFF
-it can't deal with declaring and defining constants using EQU, so I have to declare those outside the asm{} block
-same goes for nonrelocatable data such as WindowStorage DS.B whateverSize, these lines are simply not understood, so I guess it's globals again, outside the block
-relative addressing doesn't work like this line:
PEA WindowStorage(A5)
I tried defining WindowStorage as a long *int (32-bit address), as a Ptr - both don't seem to work.
I have this book "The Complete Macinotsh Assembly Language Programming" by Dan Weston, and the examples assume you have the 2-disk early version of Macintosh Development System for Mac 128k and 512k, which I was able to secure. However, even the simplest program can't find the MacTraps.D from my include instruction.
So, I tried to make it work in an asm {} block in THINK C, and that works.
Moving on to the next program, I encounter some difficulties with THINK C:
-labels don't work as is, ie MainLoop: they have to be preceded with the @ symbol
-hex numbers have to be changed from #0000FFFF to #0x0000FFFF
-it can't deal with declaring and defining constants using EQU, so I have to declare those outside the asm{} block
-same goes for nonrelocatable data such as WindowStorage DS.B whateverSize, these lines are simply not understood, so I guess it's globals again, outside the block
-relative addressing doesn't work like this line:
PEA WindowStorage(A5)
I tried defining WindowStorage as a long *int (32-bit address), as a Ptr - both don't seem to work.


