Jump to content
IGNORED

VOLKSFORTNH WITH GRAFIKSCREEN AND COLLISION


funkheld

Recommended Posts

Altirra or orig. ATARI800XL .

 

VOLKSFORTH with DPL ( GRAFIK 160x80 with 4 text line by ) and PM collision.

ATR start :

FTH.COM

then:

INCLUDE" D:XJOYTEX1.f

then:

INIT

then:

100 BEWEGE (RETURN)

100 pixels with the joystick or 10x collision then ended.

or 160 BEWEGE (Return)...or....10x collision then ended.

 

HEX
9FFF SP!
9FFF S0 !

022F CONSTANT SDMCTL
026F CONSTANT GPRIOR
D000 CONSTANT HPOS0
D01D CONSTANT GRACTL
D407 CONSTANT PMBASE
230  CONSTANT SDLSTL
D40B CONSTANT VCOUNT
A000 CONSTANT SCREEN0
BF60 CONSTANT SCREEN1

02C0 CONSTANT PCOLR0
02C4 CONSTANT COLOR0
02C5 CONSTANT COLOR1
02C6 CONSTANT COLOR2
02C8 CONSTANT COLOR4
0278 CONSTANT STICK0
D004 CONSTANT P0PF
D01E CONSTANT HITCLR

VARIABLE XPOS
VARIABLE YPOS
VARIABLE TESTXY
VARIABLE MILLI
VARIABLE ODLIST
VARIABLE COLOR0O
VARIABLE COLOR1O
VARIABLE COLOR2O
VARIABLE COLOR4O
VARIABLE ZC
VARIABLE ZZ
VARIABLE ZA
VARIABLE ZA1

VARIABLE DLIST -2 ALLOT
70 C, 70 C, 70 C,
4D C,  SCREEN0  ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D , 0D0D ,
0D0D , 0D0D , 0D0D ,  0D C,
42 C,  SCREEN1  ,
0202 , 02 C,
41 C, DLIST ,

VARIABLE SPRITE0 9 ALLOT
FF SPRITE0 C!
81 SPRITE0 1 + C!
81 SPRITE0 2 + C!
81 SPRITE0 3 + C!
81 SPRITE0 4 + C!
81 SPRITE0 5 + C!
81 SPRITE0 6 + C!
81 SPRITE0 7 + C!
FF SPRITE0 8 + C!

: GCLS SCREEN0 C80 0 FILL ;

: READ-DAT
SCREEN0 C80 SOURCE-ID @  READ-FILE
SOURCE-ID @ CLOSE-FILE ;

: INCLUDED-DAT
SOURCE-ID @  >R   R/O OPEN-FILE DUP $80 < IF DROP
SOURCE-ID ! READ-DAT ELSE
." FEHLER:" . ABORT THEN R> SOURCE-ID ! ;

: FILE-DAT"
FNBUF $50 BL FILL HERE $50 BL FILL ASCII " WORD
COUNT FNBUF SWAP CMOVE FNBUF 0 INCLUDED-DAT ;

: FILE-DAT
FNBUF $50 BL FILL " D:MULBI.BIN"
COUNT FNBUF SWAP CMOVE FNBUF 0 INCLUDED-DAT ;

: INITPM
SDMCTL C@ 1C OR SDMCTL C!
3 GRACTL C!
1 GPRIOR C!
B0 PMBASE C! ;

: DELAY
ZZ @ 0 DO
LOOP ;

: PM0POS
B400 FF 0 FILL
SPRITE0 B400 YPOS C@ + 9 MOVE
SPRITE0 B400 YPOS C@ + C + 9 MOVE
XPOS C@ HPOS0 C!
DELAY ;

: BEWEGE
 PAGE
 ZA1 !

BEGIN

	FF ZZ !

	STICK0 C@
	DUP 0E = IF YPOS C@ 1 - YPOS C! 1 TESTXY C! 1 ZA @ + DUP ZA ! . CR PM0POS THEN
	DUP 0D = IF YPOS C@ 1 + YPOS C! 2 TESTXY C! 1 ZA @ + DUP ZA ! . CR PM0POS THEN
	DUP 07 = IF XPOS C@ 1 + XPOS C! 3 TESTXY C! 1 ZA @ + DUP ZA ! . CR PM0POS THEN
   	 0B = IF XPOS C@ 1 - XPOS C! 4 TESTXY C! 1 ZA @ + DUP ZA ! . CR PM0POS THEN

	P0PF C@ 0 > IF
	500 ZZ !
TESTXY C@ 1 = IF YPOS C@ 4 + YPOS C! 1 ZC @ + ZC !  PM0POS THEN
	TESTXY C@ 2 = IF YPOS C@ 4 - YPOS C! 1 ZC @ + ZC !  PM0POS THEN
	TESTXY C@ 3 = IF XPOS C@ 4 - XPOS C! 1 ZC @ + ZC !  PM0POS THEN
	TESTXY C@ 4 = IF XPOS C@ 4 + XPOS C! 1 ZC @ + ZC !  PM0POS THEN
	THEN

ZC @ A = IF ZA1 @ ZA ! THEN

	1 HITCLR C!
	0 TESTXY C!
ZA @ ZA1 @ = UNTIL

 0 ZC !
 0 ZA !
 0 ZA1 !
PAGE ." wegpunkte/colli erreicht ! " CR ;

: INIT
INITPM

 4 2BF C!
70 PCOLR0 C!
94 COLOR2 C!
0C COLOR4 C!
DLIST SDLSTL !

FILE-DAT

32 DUP XPOS C! YPOS C! PM0POS
0 ZC !
0 ZA !
0 ZA1 !
FILE-DAT
DECIMAl ;

 

 

VOLKSFORTH: http://sourceforge.n...lksforth/files/

forth.atr

Edited by funkheld
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...