[net.micro.apple] Apple assembly code

anthony@utcsstat.UUCP (Anthony Ayiomamitis) (07/23/85)

	Is it possible once inside the Apple monitor to have listings of
assembler code dumped onto the drive rather than the printer?  I want to
hopefully upload the assembler code to another machine for other uses.

-- 

       	{allegra,ihnp4,linus,decvax}!utzoo!utcsstat!anthony
        {ihnp4|decvax|utzoo|utcsrgv}!utcs!utzoo!utcsstat!anthony

zben@umd5.UUCP (07/30/85)

In article <2233@utcsstat.UUCP> anthony@utcsstat.UUCP (Anthony Ayiomamitis) writes:
>
>	Is it possible once inside the Apple monitor to have listings of
>assembler code dumped onto the drive rather than the printer?  I want to
>hopefully upload the assembler code to another machine for other uses.
>
There is a problem doing this, because the monitor does not expect the
output routine (in CSWL) to destroy the X or Y registers, but the disk
handler does destroy these registers.  The problem manifests itself by
about one line in 10 being broken, which is about the frequency at which
it is actually doing disk block IO.

I do have an amazing basic program.  You tell it what range of memory you
are interested in, and it writes a data file with the disassembled program
from that range of memory.  I used it to freak the disk IO routines in DOS,
so there was never a problem of memory usage collisions with the basic
program itself.  It calls the disassembler in the monitor as a subroutine,
once for each line.  CSWL has been replaced by a routine that just stores
the chars in the buffer at 200.  After decoding each line, the program
writes the buffer at 200 to the file.  Since the actual write call is from
the basic program, blowing away the X register doesn't hurt anything.

Write me if you are interested in a copy of the program.

-- 
Ben Cranston  ...{seismo!umcp-cs,ihnp4!rlgvax}!cvl!umd5!zben  zben@umd2.ARPA