Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion v02i012: lem - Lemming animation v1.1, Part01/01
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Detlef Mueller  
View profile  
 More options Oct 1 1991, 11:43 am
Newsgroups: comp.sources.hp48
Followup-To: comp.sys.hp48
From: det...@mwhh.hanse.de (Detlef Mueller)
Date: 1 Oct 91 02:44:31 GMT
Local: Mon, Sep 30 1991 10:44 pm
Subject: v02i012: lem - Lemming animation v1.1, Part01/01
Checksum: 2314906768 (verify with brik -cv)
Submitted-by: Detlef Mueller <det...@mwhh.hanse.de>
Posting-number: Volume 2, Issue 12
Archive-name: lem/part01

BEGIN_DOC lemming.doc
Hi.

It seems that I spend too much time programming this little toy :-) ...
Anyway, here is an update to LEMMING version 1.1 .

The changes vs. v 1.0 are :
        - sound is generated at the correct time
        - align the sixth grob
        - speed up
        - smother animation
        - shorter

It animates a little lemming :-), walking in the status line. It doesn't
change the value of PICT. Once running, you can stop the program by
pressing any key.

If you only want to use LEM, download LEM.ASC into your HP48, execute ASC\->
and store the result into a variable.

To generate LEM, put the listings of LEM.M and LEM.S in the appropriate
files, then invoke the following commandlines at the MesS-DOS prompt:

        rplcomp lem.s lem.a
        sasm -e -N lem.a
        sload -H lem.m

This should generate the file 'LEM' (size 308 bytes, no extension). After
being downloaded to your HP48, 'LEM' should be 307.5 bytes in size with a
checksum of #F3FA. If nothing went wrong, 'LEM' is now executable.

BTW, this program is named 'lemming' because I got the animation sequence
from a game called 'Lemmings'. In the game the actors are called so,
because they're walking straight forward (and fall out of the screen if
you don't stop them) and can be manipulated indirect only.

Have a good time,
        8-), Detlef

P.S.    If there are any questions feel free to mail me.

Here are the listings:
END_DOC

BEGIN_SRC lem.m
SUpress XRef
OUtput lem
LLu lem.lr
SEarch entries.o
RElocate lem.o
END_SRC

BEGIN_SRC lem.s
*************************************************************************** **
* Modulname:    Lemming
* Modultype:    User level secondary
* Dest.Comp.:   HP48
* Language:     System RPL
* Author:       Detlef Mueller,Nibelungenweg 6,2000 Hamburg 56
* Interface:    LEM     ( --> )
* Description:
* Edition History :
*       1.000   08-11-1991      DM      Alpha version
*         001   09-19-1991      DM      Fix grob, smoth animation
*************************************************************************** **

    TITLE       Lemming

    ASSEMBLE
        NIBASC  /HPHP48-E/      Bin. download header
*                               GROB in RPLCOMP generates unusable
*                               grob definitions. This is the workaround:
MKSGROB MACRO                   * x,y,gpatt - gpatt max. 80 nibbles
        CON(5)  =DOGROB
        CON(5)  15+(($1+7)/8)*$2*2
        CON(5)  $2
        CON(5)  $1
        NIBHEX  $3
MKSGROB ENDM
    RPL

::
    CK0NOLASTWD                         ( *Std. entry* )
    ClrDA1IsStat                        ( *Suspend clock* )
    ZEROZERO TWELVE BLANKIT             ( *Clr. part of DA1* --> #0 )
    GARBAGE                             ( *Force garbage collection* )
    BEGIN
        #1+                             ( *Inc. x* )
        {   ASSEMBLE                    ( *Lemming images* )
                MKSGROB 6,10,00C3C18381818181C181
                MKSGROB 7,10,82C1C18381C1C585C2C0
                MKSGROB 7,10,0041C18183C1C1E3C366
                MKSGROB 6,10,0081C3C38181C181E323
                MKSGROB 6,10,00C3C1C381818181C181
                MKSGROB 7,10,82C1C18381818585C2C0
                MKSGROB 7,10,0041C18183818183C366
                MKSGROB 6,10,0081C3C381818181E323
            RPL
        }
        OVER SEVEN #AND #1+ NTHCOMPDROP ( *Get lem image*  #x --> #x g )
        HARDBUFF 3PICK FOUR             ( #x g --> #x g hbg #x #4 )
        GROB!                           ( *Draw new lem* --> #x )
        DUP THREE #AND #2= IT           ( *On every step ..* )
        ::  THREE 400 setbeep           ( *Generate tick* )
        ;
        %.1 dowait                      ( *Slowdown - try to rem. this :*)
        GETTOUCH IT                     ( *Key pressed ?*)
        ::  2DROP 123                   ( *Yes, signal exit* )
        ;
        ATTN? IT                        ( *ATTN pressed ?* )
        ::  DROP 123                    ( *Yes, signal exit* )
        ;
        123 OVER#=                      ( *Stop loop at x = 123* )
    UNTIL DROP                          ( *Drop x* )
    ATTNFLGCLR FLUSHKEYS                ( *Clr attn flag, key buffer* )
    ClrDAsOK                            ( *Signal redraw display* )
;
END_SRC

BEGIN_ASC lem.asc
%%HP: T(3)A(R)F(.);
"D9D2051A8113593CF14676040FD62124F502A170FED3047A20E1B2032000A000
06000000C3C18381818181C181E1B2032000A00007000082C1C18381C1C585C2
C0E1B2032000A0000700000041C18183C1C1E3C366E1B2032000A00006000000
81C3C38181C181E323E1B2032000A00006000000C3C1C381818181C181E1B203
2000A00007000082C1C18381818585C2C0E1B2032000A0000700000041C18183
818183C366E1B2032000A0000600000081C3C381818181E323B21302C2305304
01BE30FED30C9B2653621EF116710409761188130D00401BE30A9226CB916D9D
20D004011920091002B141B21304B4949C7A141740CB916D9D208523011920B7
000B213026224CB916D9D204423011920B7000B213011920B7000BE0268C1704
42308605017D0044193B2130AF3F"
END_ASC

BYTES: #3FAh 307.5

BEGIN_UU lem.uue
begin 644 lem
M2%!(4#0X+46=+5"A&#&5PQ]D9T#P;1)"7R`:!^\]0*<"'BLP`@`*`&`````\U
M'#@8&!@8'!@>*S`"``H`<```*!P<.!@<7%@L#!XK,`(`"@!P````%!P8.!P<+
M/CQF'BLP`@`*`&`````8/#P8&!P8/C(>*S`"``H`8````#P</!@8&!@<&!XK:
M,`(`"@!P```H'!PX&!A86"P,'BLP`@`*`'`````4'!@X&!@X/&8>*S`"``H`.
M8````!@\/!@8&!@^,BLQ("P#-4`0ZP/O/<"Y8C4FX1]A%T"09Q&(,=``!+$^?
MH"EBO!G6V0(-0!"1`I`!(!L4*S%`2TG)IT%Q!+P9UMD"6#(0D0)[`+`2`V(B>
FQ)MAG2U`)`,1*;`'`"LQ$)$">P"P#F+(<4`D`VA0$-<`1)&S$@.S6
``
end
END_UU

--
+-----------------------------------+-------------------------------------- -+
| `.. . Looks like a fish, moves    |             Detlef Mueller            |
|  like a fish, steers like a cow.` |          det...@mwhh.hanse.de         |
|  Ford in THGTTG, part II, p. 107  |...!uunet!mcsun!unido!mcshh!mwhh!detlef|
+-----------------------------------+-------------------------------------- -+


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.