Re: A83: Background routine...


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

Re: A83: Background routine...




wrong.

Linus

On 07-Sep-98, Harper Maddox wrote:

>the only practical application of a scrolling background is for a fighting
>game

>-Harper Maddox

>jerky@ebicom.net
>IRC nick: Geori
>ICQ: 1214597

>-----Original Message-----
>From: Scott Dial (Revenant) <homosapian@geocities.com>
>To: assembly-83@lists.ticalc.org <assembly-83@lists.ticalc.org>
>Date: Monday, September 07, 1998 10:51 AM
>Subject: Re: A83: Background routine...


>>
>>I have to say I hate people like that, but how is this gonna help much
>>if you are making a game? By doing this you have to have a full fledge
>>picture for each piece of screen. That's way too big to use for a
>>side/vertical scroller. I have one that uses sprites for a side scroller
>>and would do the same thing for a game. Except it keeps crashing. If you
>>want to debug it and use it then cool.
>>
>>James Matthews wrote:
>>>
>>> I know my tutorials are slow coming out, but senior year + college
>>> apps + ThinkQuest + Monopoly (programming) + chicks...um, tutorials
>>> are waaaay down there :)...anyway, here is my Background tutorial.
>>>  Thanks to Movax (ey?)....
>>>
>>> Tutorial 39: Scrolling Background.
>>> More Game Techniques.
>>> Introduction.
>>> Well, after attempt after attempt at finding or writing a decent
>>> scrolling routine.  I'm talking to Movax, and he's like "Hold on", 5
>>> minutes later I'm running a perfect scrolling routine he'd just
>>> written (don't you hate people like that! =Þ).  Thanks a lot to Hannes
>>> "Movax" Edfeldt.
>>>
>>> New Commands.
>>>
>>> _getk - I've covered this briefly before.  Here's the formal
>>> coverlike BASIC getkey.  Returns value of the key to OP1.  Values are
>>> shown the Ti-manual.
>>>
>>> The Code.
>>>
>>>  ld    hl,picture ;Load your pic.
>>>  ld de,PLOTSSCREEN
>>>  ld bc,768
>>>  ldir
>>>  call  _grbufcpy_v
>>>
>>> loop:
>>>  call _scrollright
>>>  call _grbufcpy_v
>>>
>>>  call    _getk    ; Key to OP2.
>>>  call    _op2toop1
>>>  call    _convop1
>>>  cp  45 ; If clear
>>>  jp      nz,loop ;
>>>  ret
>>>
>>> _ScrollRight:
>>> ld de,12
>>> ld hl,8e29h-1
>>> ld b,64 ; 64*12=768 bytes to rotate
>>> _loop1:
>>> push hl ; Test if there's a bit to wrap around
>>> add hl,de
>>> ld a,(hl)
>>> and 00000001b
>>> sub 00000001b
>>> ccf
>>> pop hl
>>>
>>> inc hl ; We'll waste space here to gain some speed
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl ; We'll waste space here to gain some speed
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>> inc hl
>>> rr (hl)
>>>
>>> djnz _loop1
>>>
>>>  ret
>>>
>>> picture:
>>> ;Put your picture here.
>>>
>>> .end
>>> END
>>>
>>> Conclusion.
>>> Thanks again to Movax for this routine!  This should help all of you
>>> game freaks out there!  If you come up with a better routine that
>>> scrolls left/right, up/down, or all directions, please contact me!
>>>  Thanks.
>>>
>>> {button , Klink(Scrolling;Movax;Graphics)} Related Topics.
>>>
>>> Addition:  if you come up w/a routine that is *well documented*
>>> contact me :)...
>>>
>>> Later,
>>>
>>> James Matthews (matthews@tkb.att.ne.jp)
>>>
>>> ICQ: 7413754
>>> http://home.att.ne.jp/gold/tomcat21/index.html
>>> http://library.advanced.org/18242/
>>
>>--
>>Scott Dial
>>revenant_1@hotmail.com
>>ICQ#3608935
>>




References: