[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Apple II weather display
BLuRry <brendan.robert@gmail.com> wrote:
> On Apr 20, 7:12 pm, Osgeld <osg...@cheesefactory.us> wrote:
>> I dont even know where to begin with ASM, any good references for the
>> total noob? especially for the apple but generic would function as well
>
> Everything you ever wanted to know about 6502 assembler:
> http://6502.org/
>
> Just a few basic rules to help frame things for you:
> The CPU has only three registers that can hold values: A[ccumulator],
> X and Y. Most of the operations you can perform will be in the
> accumulator. The 6502 also has opcode variants to speed things up for
> memory locations in the first 256 bytes of ram, called the "Zero
> Page". So you could use memory locations in the zero page (sometimes
> affectionately abbreviated ZP) for additional variable storage, just
> try not to clobber anything in use by [Pro]DOS if you're trying to
> peacefully co-exist with a resident OS.
>
> There's lots of great articles in Nibble magazines (that's where I
> learned):
> http://www.nibblemagazine.net/
>
> And to code assembler you'll need... well... an assembler of course!
> 6502.org has an exhaustive list (though quite dated) here:
> http://www.6502.org/tools/asm/
> My favorite has been Acme for some time:
> http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/acme/
> Though if you want to be totally hard-core old school then you could
> use an assembler on the machine directly like Merlin or ORCA/M.
> Personally I find it easier to cross-assemble and send programs over
> to an emulator for testing. Then send via serial for final testing on
> real hardware later.
>
> I suppose this topic should be a new subject line. Oh well, such is
> life. This message board is dripping with 6502 coding veterans (and
> junkies alike). Just ask and we'll help!
I'd just re-spin page zero some...
Indirect addressing through page zero is really the only method for
addressing variable addresses. As a result, page zero can also be thought
of as a bank of 128 address registers!
If your software runs cooperatively with other software--like AppleSoft or
ProDOS--then it is handy to restrict your use of page zero to those
locations they leave unused (to avoid having to save and restore it at each
transition).
-michael - NadaNet 3.1: http://home.comcast.net/~mjmahon