home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 1
/
GoldFishApril1994_CD1.img
/
d1xx
/
d183
/
fixfd
/
readme
< prev
next >
Wrap
Text File
|
1989-02-25
|
3KB
|
61 lines
To : Aspiring M68000 Programmers
From: Peter Wyspianski
Date: 01 Jan 89
As I was getting ready to archive my 'FixFD' utility, it occured to me that
some aspects of programming the Amiga would have been a LOT easier to learn
if I just had a few examples to look over.
I came to the Amiga programming enviroment from the MacIntosh. So I was no
stranger to the M68000 or the sort of things you have to do with it in such a
complex enviroment. Still, it has been a struggle. While writing this
utility I had to learn how to detect the user hitting 'ctrl-c' to abort the
program. No big deal, but I wasted a couple hours looking in the wrong
places for the information (the AmigaDOS manual and some magazines).
Turns out it is not really documented anywhere, at least not specifically.
But I wonder where I would be now if I was a complete novice M68000
programmer? It's not like the 6502 days when you could just drop into a
machine language monitor and hand-code some instructions to see what they
do (that is how I first learned ML).
I have decided to include the source code for the main program. You may
study it, and even use the routines if you like. I just hope you learn
something.
I have NOT included my 'Std_Macs68k' file. This file just contains a bunch
of macros that match my programming style. For example, if I am testing a
register for zero, I like to be able to code 'bz.s xxx' rather then the more
ambiguous 'beq.s xxx'. So in my macro file I have a macro called 'bz'.
I have also not included the 'dos_lib.i' file. This file can be created by
using FixFD like so:
>FixFD dos_lib.fd dos_lib.i
in my case, I then edited the dos_lib.i file to add a 'PREASM' option and
ran it through the assembler (CAPE68k from Inovatronics). This feature of
CAPE lets it inhale the 'INCLUDE' file without pausing to assemble it.
A real timesaver in larger projects. This step is entirely optional.
Finally, the code must be linked with Std_Startup.obj. This file is my
customized version of AStartup.obj. I have included 'Std_Startup.obj' but
not the source code for it. If you want to play around with FixFD, you
could link with AStartup.obj instead. Here is how you get the link to work:
>BLink with FixFD.link
if you don't happen to have the freely-redistributable 'BLink' then
substitute the name of your linker (probably 'ALink'). The file 'FixFD.link'
is also included. Take a look at it, because it expects to find everything
in 'RAM:'.
Good luck! Remember to read the docs. And if you have any questions or
comments then please send me a postcard (my address is in the docs).
-Peter W.