Re: [stella] Player data loading...semi newbie

Subject: Re: [stella] Player data loading...semi newbie
From: Thomas Jentzsch <tjentzsch@xxxxxx>
Date: Fri, 19 Oct 2001 10:13:07 +0100
Glenn Saunders wrote:
> A problem I see is if you clear out GRPx within Skipdraw that you can't have
> the successful branch that stores graphics to GRP0 just naturally run 
> through Skipdraw as it does in Thomas' example because the data that gets 
> written to it will then get wiped out.  So you have to add a JMP right after 
> the data gets written to GRPx that skips over SkipDraw.  This adds cycles to 
> the LONG branch of the routine.

You don't have to add that JMP (or branch). You can branch with
.skipDraw somewhere outside the main kernel loop, wait or do something
useful there and then jump back into the main kernel. This solution only
works, if the cycles of the branches differ by at least 4 cycles (1 for
the taken branch and 3 for the additional jump).

If that's not the case, then you can change bcc .skipDraw into bcs
.doDraw and reorganize your code. This only adds one cycle to the long
branch.

Or simply add one zero byte to the end of your data... :)


> But to me, the processor directive should indicate the legal instruction
> set, not a command line switch.  The only question is whether to always
> allow illegal opcodes when you do "processor 6502" or not.  If you want to
> turn it off, I happen to prefer another processor directive, like 6502i (for
> illegal) where the default 6502 is off, or 6502s (for strict) if the default
> 6502 has illegal opcodes.

Agreed. Since most people were using DASM without illegal opcode
support, we should add a new directive for illegal opcodes (6502i).

Have fun!
Thomas                            
_______________________________________________________
Thomas Jentzsch         | *** Every bit is sacred ! ***
tjentzsch at web dot de |


-
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/

Current Thread