Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #5895

Re: Merlin32 and Negative DS Pseudo Op

Newsgroups comp.sys.apple2.programmer
Subject Re: Merlin32 and Negative DS Pseudo Op
References <naCdnfXJrIycq_78nZ2dnUU7-LnNnZ2d@earthlink.com> <2dd21bcd-ccc3-4872-8757-ce12f2e12237n@googlegroups.com> <e4fe03ff-6504-4557-8408-c7275de5e1a4n@googlegroups.com>
Organization provalid.com
From kegs@provalid.com (Kent Dickey)
Message-ID <ntadnRcqNLICqOn8nZ2dnUU7-XfNnZ2d@giganews.com> (permalink)
Date 2021-10-23 11:17 -0500

Show all headers | View raw


In article <e4fe03ff-6504-4557-8408-c7275de5e1a4n@googlegroups.com>,
fadden  <fadden@fadden.com> wrote:
>I believe what he's trying to do is patch the binary included with
>PUTBIN with the assembler itself.
>
>With an assembler written by C64 people you can do this, because they
>have separate notions of "physical" and "logical" program counters
>within the assembler.  For example, in 64tass if you do this:
>
>*       =       $1000
>        lda     $1234
>
>*       =       $1001
>        .word   $4567
>        rts
>
>The output is:
>
>00000000: ad67 4560                                .gE`
>
>Merlin32 only has a "logical" PC, so it assembles the same code to:
>
>00000000: ad34 1267 4560                           .4.gE`
>
>The C64 assemblers place everything into a 64KB bank.  If the output is
>discontiguous, you'll get empty gaps in the output file.  It will even
>wrap around at the end of the bank, so the stuff you output at the end
>of the source file ends up at the start of the binary. 
>(https://sourceforge.net/p/tass64/bugs/59/)
>
>Once I understood this, certain aspects of 64tass and ACME made a lot
>more sense.  I'm not aware of an Apple II assembler that had the notion
>of separate PCs, though the old "OBJ" directive could have been used
>this way.

EDASM worked differently and I think you could rewrite earlier
instructions by storing instructions directly in memory at the OBJ
addresses.  EDASM was really slow and hard to use, so it wasn't popular
(at least the DOS 3.3 version was slow).

Kent

Back to comp.sys.apple2.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Merlin32 and Negative DS Pseudo Op Hugh Hood <hughhood@earthlink.net> - 2021-10-10 13:50 -0500
  Re: Merlin32 and Negative DS Pseudo Op Antoine Vignau <ntn.vignau@gmail.com> - 2021-10-22 11:37 -0700
    Re: Merlin32 and Negative DS Pseudo Op fadden <fadden@fadden.com> - 2021-10-23 08:03 -0700
      Re: Merlin32 and Negative DS Pseudo Op kegs@provalid.com (Kent Dickey) - 2021-10-23 11:17 -0500
        Re: Merlin32 and Negative DS Pseudo Op fadden <fadden@fadden.com> - 2021-10-23 10:17 -0700
      Re: Merlin32 and Negative DS Pseudo Op Hugh Hood <hughhood@earthlink.net> - 2021-10-23 13:43 -0500
        Re: Merlin32 and Negative DS Pseudo Op Oliver Schmidt <ol.sc@web.de> - 2021-10-24 08:23 +0000

csiph-web