Re: A89: Re: Re: Addressing


[Prev][Next][Index][Thread]

Re: A89: Re: Re: Addressing




> Taking the advice of Johan, I changed the mulu.l to mulu.w.  That caused a
> lovely crash complete with grayscale static.  (Which I suppose was better
> than a blank screen and an address error.)  I then tried the optimized code
> he was kind enough to include.  It caused the same lovely crash.  Any ideas?
>
> choose:
>     ; in:   d0.w=x
>     ;   d1.w=y
>     ;   d2.w=picture number (0=first)
>     ;
>     lea Pic0(pc),a0
>     lsl.w   #3,d2
>     add.w   d2,a0
>     add.w   d2,d2
>     add.w   d2,a0
>     moveq   #-1,d3
>     move.l  graphlib::plane0,a1
>     lea graphlib::put_sprite_mask,a2
>     jsr (a2)
>     lea 12(a0),a0
>     move.l  graphlib::plane1,a1
>     jmp (a2)

Just curious: do you use the registers you modify in this routine later on?
Like, do you use d2 in a loop, or a0?
Also, is the greyscale initialized correcly? Have you set it to use a1 as your
plane pointer?

The static _might_ be caused by not clearing the screen. Just an idea.

 / Niklas Brunlid
Check out Prosit for the TI-89 / TI-92+ at http://prosit.ticalc.org
Random PQF Quote follows:

I stroll along, talk, I sign books, people buy me drinks, I forget where my
hotel is, I get lost and fall into some local body of water... done it
hundreds of times.
        -- Going to a convention is fun!
           (Terry Pratchett, alt.fan.pratchett)




References: