[comp.sys.atari.8bit] Unsprites: Non player-missile graphics

fseipel@hpuxa.ircc.ohio-state.edu (Frank E. Seipel) (03/02/91)

 Somebody requested a sprite program for the 8-bit which didn't use player
missile graphics; that is, a bit block movement subroutine. I searched the
Mac hard drive and came up with Unsprite1 - Unsprite6, from Analog
magazine, issue 70, March 1989. The fifth listing is the Mac/65 assembly
source; if requested, I'd be glad to post this. Here is the first file,
it is the machine code loader. You *must* run it before running Unsprite
2-4, or, obviously, they will not work.

----------------------------cut here-------------------------
begin 0666 UNSPRIT1.BAS
M     0(! P$3 8@,FPS4P0             !         0 8& !0<F]G<F%M
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
**2DI*2DI*2DI*2DI
 
end

fseipel@hpuxa.ircc.ohio-state.edu (Frank E. Seipel) (03/02/91)

Unsprite2, uuencoded, see previous message.
 
--------------------------cut here---------------------------

begin 0666 UNSPRIT2.BAS
M     2L!+ &, =\%\@5'4DU/1,571$-0V5=$4%-4Q4)51J1"549&1=)-1<W4
MV-)#3U#9V5!!4U3%              $          @       ( #        
M  0         !0         &          <         "          )    
M      H         "P        $ &!@ 4')O9W)A;2!,:7-T:6YG(#(ZFP( 
M'Q\ 56XM<W!R:71E(&1E;6]N<W1R871I;VX@,9L# !04 $)Y($IA<V]N($QE
M:6=HFP0 '!P *$-O<'DL('!A<W1E("8@<V-R;VQL*9L%  8& )L4 '</-H M
M#D '     !0;-H$M#D("2$(  !0G-H(M#D("4'<  !0T%(,[#D&!D@   "P4
M13:#-PY  0     L+@\! !16-H,W#D&!D@   "PN#P$ %&XV@S<.0 (     
M+"Z#-PY  0     L%'<VA"U#.H,L%AX !@8 FR@ # P T,'2U*"QFS( !@8 
MFSP ,P<K@!01 PY  0     4,S:%+48Z#D"(     "PE1CH.0(D     +"0.
M00)6    %D8 (B(H#QH@(" @(" @("!$<F%W(')A;F1O;2!S:&%P9190 $\9
M"(8M#D !     !F )0Y  @     4.C:'+4@Z#D !     "PD@"0.0 ,     
M)0Y !@     43P-(.@Y  0     L) Y %0     66@ ['PB(+889AB4.0 ( 
M    )2N ) Y  P     L%"4LAQ*(%#,OAR4.0!4     $H@4-PF(%#L)AA9D
M #(R-HDM/SJ!/(4\#@       #P.        / Y (      \#D @     #R$
M/( L%FX 'Q\H#Q<@(" @(" @(" @("!087-T92!S:&%P919X %H7"(8M#D !
M     !D.0$      %"XVARU(.@Y  0     L) Y! 6     413:*+4@Z#D !
M     "PD#D!0     !16-HLM/SJ"/(4\ASR*/(0L%%H)AA:"  8& )N,  P,
M -#!TM2@LIN6  8& )N@ !\'*X 4$S:'+0X        4'S:*+0Y %0     6
MJ@ A(2@/&2 @(" @(" @2&]R:7IO;G1A;"!S8W)O;&P6M  Z%PB&+0Y  0  
M   9#D$!*    !0E-H<MAR4.0 $     %#8VBRT_.H(\A3R'/(H\A"P4.@F&
M%KX !@8 F\@ # P T,'2U*"SF]( !@8 F]P 'P<K@!03-H<M#D!      !0?
M-HHM#@       !;F !\?* \7(" @(" @("!697)T:6-A;"!S8W)O;&P6\  Z
M%PB&+0Y  0     9#D!      !0E-HHMBB4.0 $     %#8VBRT_.H(\A3R'
M/(H\A"P4.@F&%OH !@8 FP0!# P T,'2U*"TFPX!!@8 FQ@!'P<K@!03-H<M
M#@       !0?-HHM#@       !8B 1\?* \7(" @(" @("!$:6%G;VYA;"!S
M8W)O;&P6+ %(%PB&+0Y  0     9#D!0     !0E-H<MAR4.0 $     %#,V
MBBV*)0Y  0     41#:++3\Z@CR%/(<\BCR$+!1("886-@$K#@       !8 
M@!,3&0\+1#I04D]',BY"05,6                                    
M                                                            
M                                                            
+                
 
end

fseipel@hpuxa.ircc.ohio-state.edu (Frank E. Seipel) (03/02/91)

Unsprite3, uuencoded, see previous message.

--------------------------cut here---------------------------
begin 0666 UNSPRIT3.BAS
M     40!10'U 88'F0='4DU/1,571$-0V5=$4%-4Q4)51J1"549&1=)05---
M1<U!J$+80ME!3L?4TD-/54[4V-E8L5FQ6,]9ST-/4-E005-4Q0          
M   !          (       "  P         $          4         !@  
M     $ '          @         "0         *          L         
M#                   #@         /         !          $0      
M   2         !,         %          5         0 8& !0<F]G<F%M
M($QI<W1I;F<@,SJ; @ ?'P!5;BUS<')I=&4@1&5M;VYS=')A=&EO;B RFP, 
M%!0 0GD@2F%S;VX@3&5I9VB;!  D)  H,BXU1"!R;W1A=&EN9R!C<GES=&%L
M(&UA=')I>"F;!0 &!@";"@!W#S: +0Y "      4&S:!+0Y" DA"   4)S:"
M+0Y" E!W   4-!2#.PY!@9(    L%$4V@S<.0 $     +"X/ 0 45C:#-PY!
M@9(    L+@\! !1N-H,W#D "     "PN@S<.0 $     +!1W-H0M0SJ#+!84
M $,.0"      %!<K#@       !0_* \B3G5M8F5R(&]F('!O:6YT<R!I;B!C
M<GES=&%L("@S+3$P*1440P*%%AX (2$'A2 .0 ,     *84A#D 0     !L.
M0"      %B@ 70<K@!01 PY  0     4,S:&+48Z#D"(     "PE1CH.0(D 
M    +"0.00)6    %$4?#D$'4@   !(.0 $     %%<?#D""     !(.    
M    %%HH%%TH%C( !@8 FSP '!P Q\7.Q=+!U,6@IJ##S]#9H,;2P<W%TYM&
M  8& )M0 "4*%(<YA2P4$Q09-H@M#D !     !0E-HDM#D !     !9: #P/
M-HHM#@       !0="(LM#D !     !F%%"8VASB++"V*%#@VBBV*)2L.00-@
M    )X4L%#P)BQ9D #<K"(PM#@       !DK#D$#8    ">%+"8.0 4     
M&@Y !0     4-S:-+0X        6;@ P,"@/*$=%3D52051%("8@0T]062!%
M04-((%)/5$%424].($]&($-265-404P6>  ?$0B++0Y  0     9A10?-HTM
MC24.0 $     %H( 4Q\VCBU'.H<XBRPL) Y (      E#D$!8    !0[-H\M
M13J'.(LL+"0.0 8     )0Y @      41P>+(@Y  0     ;33:0+8X44S:1
M+8\6C  ;"2R.$H\4%0>-'@Y  0     ;&R^2$I,6E@ S%2P.00%@    $@Y 
M8P     4&R^.$H\4+2P.00%@    $@Y E0     4,R^.$H\6H  G"3:2+8X4
M#S:3+8\4(S:'.(LL+8<XBRPE#D %     !0G"8L6J@ /"2R.$H\4#R^0$I$6
MM !3,C:4+3\Z@3R&/ Y! 3$    \#D!A     #P.00&)    / Y EP     \
MA#R +!1 -H0MA"4.00,     %$\H' Y !@     5#P%]%%,)C!;(  8& )O2
M !04 ,'.R<W!U,6@QM+!S<73F]P !@8 F^8 2"L.        %!\?#D$'4@  
M !(.0 $     %"(H%$@H#R$@("!04D534R!!($M%62!43R!"14=)3B!!3DE-
M051)3TX6\  @( =&.@Y!!V0    L(@Y! E4    ;#D$"0    !;Z (T5'PY!
M!V0    2#D$"50   !0A-HXM#D$!     !0M-H\M#D!@     !0_*PY "   
M   E#D 6     !19, Y  @     2#@       !(.        %',P#D !    
M !(.        $@Y %0     4C3 .0 0     $@Y !P     2#D %     !8$
M 1X>"(LM0SJ#+!F$)@Y! P     :#D$#     !8. 104-I4M/SJ"/(8\CCR/
M/(LL%A@!$PLVCBV.)8@4$S:/+8\EB18B 2 9!X\@#D !     "F/(0Y! 5  
M   ;(#:)+3:)%BP!(!D'CB$.00)G    *8X@#D !     !L@-H@M-H@6-@$1
M!PF+%!$*#D$"8    !8 @!,3&0\+1#I04D]',RY"05,6)R<G)R<G)R<G)R<G
M)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G
@)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G)R<G
 
end

fseipel@hpuxa.ircc.ohio-state.edu (Frank E. Seipel) (03/02/91)

Unsprite4, uuencoded, see previous message.

Note: Unsprit1 is the loader; run it first, then any one of
the demo programs Unsprit2-Unsprit4.
--------------------------cut here---------------------------
begin 0666 UNSPRIT4.BAS
M     3\!0 '@ 8T%H 5"54:D1U)-3T3%U%!0PD)0S-C24U384U391=A%V5-#
M4LY43$U%S4381-E-1<U$3U?.04-23U/30T]53M1!1,0 @            0  
M       "          ,         !          %          8         
M!P         (          D         "@         +          P     
M              X         #P         0         !$         $@  
M       3         0 8& !0<F]G<F%M($QI<W1I;F<@-#J; @ @( !"05-)
M0R!5;BUS<')I=&4@97%U:79A;&5N=)L# !04 $)Y($IA<V]N($QE:6=HFP0 
M!@8 FPH $! 4@#L.08&2    +!84 "HK#@       !0F* \31U)!4$A)0U,@
M34]$12 H,"TX*144*@*!%AX &1$(@BT.        &8$4%2*#%!D)@A8H ",C
M#D(! #   !0;"((M#@       !F!%!\BA!0C"8(6,@ 1!RN!%!$##D !    
M !8\  8& )M& !L; $=E;F5R871E(')A;F1O;2!S:&%P99M0  8& )M: $<9
M"((M#D !     !F!)0Y  @     4,C:%+4@Z#D !     "PD@20.0 ,     
M%$<#2#H.0 $     +"0.0 0     %F0 .Q\(ABV"&8(E#D "     "4K@20.
M0 ,     +!0E+(42AA0S+X4E#D 5     !*&%#<)AA0["8(6R  &!@";T@ 1
M$0!#;W!Y('=I;F1O=YO<  8& )OF !T7* \.4U1!4E0@5D5#5$]2+3X5%!T"
MAQ*(%O  &Q4H#PQ%3D0@5D5#5$]2+3X5%!L"B1**%OH )24VBRU&.@Y B   
M   L)48Z#D")     "PD#D$"5@   !8$ 2,4-HPMBR6()(0E4#J')X,L%",V
MC2U0.BN))H<L)X,L%@X!"PLVCBV*)H@6& $)"3:/+8P6(@$1$0B0+0X     
M   9CA8L 401")$M#@       !F-%!\VDBV2)0Y  0     4,#: -Y(L+CXZ
M1CJ/)9$L+!1 'RN/)9$L$@Y! E4    41 F1%C8!#PLVCRV/)804#PF0%O0!
M!@8 F_X!$A( 4&%S=&4@5VEN9&]WFP@"!@8 FQ("'1<H#PY0550@0DQ/0TL@
M050M/A44'0*'$H@6' (:%#:,+8LEB"2$)5 ZAR>#+!0:-H\MC!8F A$1") M
M#@       !F.%C "-1$(D2T.        &8T4'S:3+9,E#D !     !0Q'RN/
M)9$L$D Z@#>3/),L+!0U"9$6.@(/"S:/+8\EA!0/"9 61 (&!@";3@(&!@";
M$"<5%0!0:7AE;',@4&5R($)Y=&6;&B<7%P$Q+#$L,2PT+#@L-"PX+#0L.)LD
M)Q04 $)Y=&5S(%!E<B!,:6YEFRXG(" !-# L,C L,C L,3 L,3 L,C L,C L
M-# L-#"; ( 3$QD/"T0Z4%)/1S0N0D%3%BXN+BXN+BXN+BXN+BXN+BXN+BXN
M+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN+BXN
1+BXN+BXN+BXN+BXN+BXN+BXN
 
end