Jump to content
IGNORED

Entry 2015: Slalom!


Recommended Posts

That's a neat demo. I agree with GroovyBee that in a two-player simul-play scenario, you don't need as much visual detail, so a stray tree here and there should suffice. You could do something clever like define three trees that could be shown on the screen at a time, of which two are on the same side (randomly placed, of course) and re-use the same cards.

 

-dZ.

Link to comment
Share on other sites

So, with the split screen mode, would you be able to see the other player on your side of the screen. Say one guy is red and one is blue, when they are on the same place on the hill would each skier show up on the other players side of the screen. The. If the red player pulls away, the blue player would be left behind on his screen and vice versa. That would be cool.

Link to comment
Share on other sites

With my demo you need 8 cards to represent each on-screen card due to the one pixel shift without using sprites. To get lots of stuff on screen you would have to be pretty resourceful, say using the flag pole as the tree base for example. As mentioned earlier you don't need a lot on screen, just something to represent downhill movement.

 

So, with the split screen mode, would you be able to see the other player on your side of the screen.

 

This is why I wrote the code without using sprites. When the opponent is on your half of the screen, you would also be on their half of the screen, utilizing 4 of the 8 sprites assuming only 1 sprite per player.

 

Link to comment
Share on other sites

 

This is why I wrote the code without using sprites. When the opponent is on your half of the screen, you would also be on their half of the screen, utilizing 4 of the 8 sprites assuming only 1 sprite per player.

 

Cool. So, instead of a tree or flags you could have a jump or ramp every so often. That would be cool. I could also see this turned into a downhill mountain biking game using the motocross bike instead of skier and then have an occasional tree and jump.

Link to comment
Share on other sites

I could also see this turned into a downhill mountain biking game using the motocross bike instead of skier and then have an occasional tree and jump.

 

That's funny you mention it. I was planning on making an excitebike clone after I finish some of my other projects, only change the scroll to horizontal.

Link to comment
Share on other sites

I think Excitebike would be an excellent port to the Inty. If you can get the physics to mimic the Nintendo version, wow. I really like the way you can control the bike and the angle so you can land and keep your speed, etc. whales, skiing, motocross. You have eclectic Inty tastes. I like it!

Link to comment
Share on other sites

I think Excitebike would be an excellent port to the Inty. If you can get the physics to mimic the Nintendo version, wow. I really like the way you can control the bike and the angle so you can land and keep your speed, etc. whales, skiing, motocross. You have eclectic Inty tastes. I like it!

 

You know what would be even better? An brand new and original game. ;)

 

I think this technique of "simul-play" is very clever useful for many types of games. It would be a shame to just re-do some existing one.

 

-dZ.

  • Like 1
Link to comment
Share on other sites

 

You know what would be even better? An brand new and original game. ;)

 

I think this technique of "simul-play" is very clever useful for many types of games. It would be a shame to just re-do some existing one.

 

-dZ.

 

I agree the time and energy it takes to make a game could be better spent on new/original ideas, although I would love to see Excitebike with multiplayer as the NES version didn't have it.

 

 

whales, skiing, motocross. You have eclectic Inty tastes. I like it!

 

Well, it was carlsson's idea for a skiing game so I don't want to take credit for that. Plus fsuinnc did a great job on Stunt Cycle. I would say we all have eclectic taste and enjoy helping each other!

  • Like 2
Link to comment
Share on other sites

If you take a cross between downhill skiing and motocross, would you get water ski? If anyone wants inspiration, I think this C64 game (of which similar games may exist on other platforms) could benefit from an overhaul. I imagine you could even have two player support without requiring GRAM techniques for individual scrolling, it could probably be challenging enough with both players on the same screen, using hardware scroll.

 

Edited by carlsson
  • Like 1
Link to comment
Share on other sites

  • 1 month later...

Added title music and game play music. Carlsson, thanks for letting me edit.

REM Slalom
  REM by Anders Carlsson <anders.carlsson@sfks.se>

  REM 2015-02-15: Initial version
  REM 2015-12-31: Compo version
  REM 2016-03-29: Added Title Music Track

REM BACKGROUNDS
REM $0000 = BLACK    | $1000 = GREY     | $2000 = DA.GREEN | $3000 = CERISE
REM $0200 = BLUE     | $1200 = CYAN     | $2200 = MI.GREEN | $3200 = L.VIOLET
REM $0400 = RED      | $1400 = ORANGE   | $2400 = YELLOW   | $3400 = LI.GREEN
REM $0600 = L.YELLOW | $1600 = FO.GREEN | $2600 = WHITE    | $3600 = D.CERISE

REM FOREGROUNDS
REM $xx00 = BLACK    | $xx04 = DA.GREEN
REM $xx01 = BLUE     | $xx05 = MI.GREEN
REM $xx02 = RED      | $xx06 = YELLOW
REM $xx03 = L.YELLOW | $xx07 = WHITE

  REM  WAIT
  DEFINE 0,13,graph:WAIT
  DEFINE 13,5,graph2:MODE 1:WAIT
  score=0

title:
  BORDER 7,0:WAIT
  SPRITE 0,0,0,0
  CLS
  FOR i=1 TO 12:PRINT COLOR $2600,"                    ":NEXT
  PRINT AT 0 COLOR $2604,"\262\268\258\268  \257\265 \268  \262\268\258\265 \257\264\268"
  PRINT "\268\260\263\268  \262\267\258\268  \268\261\264\268\265\268\264\268"
  PRINT "\260\265 \268  \268\262\264\268  \268\261\264\268\260\261\264\268"
  PRINT "\259\261\264\268  \268\267\264\268  \268\261\264\268 \261\264\266"
  PRINT "\267\268\263\268\268\264\268\261\264\268\268\264\267\268\263\268 \261\264\268"

 	Wait
	Play Simple
	Wait
    Play MusicTitle
    Wait

  PRINT AT 120,"ANDERS CARLSSON 2015"
  PRINT AT 160,"LAST SCORE: "
  PRINT <>score
  WAIT

waitbutton:
  IF CONT.BUTTON = 0 THEN GOTO waitbutton

  score=0
  life=3:misses=5

  BORDER 7,1:WAIT

  CLS
  Play Off
  FOR row=1 TO 11:PRINT AT row*20 COLOR $2600,"                    ":NEXT

  GOSUB draw_flags
  oy=0:od=0:port=0:score=0
  px=90:py=20
  #skier = $0878 : REM 00sc 1000 0111 1ccc
	Play MusicAction
loop:

  IF oy=0 THEN od=4:oy=7 ELSE oy=oy-1
  SPRITE 0,$0300 + px,$0100 + py - oy,#skier
  SCROLL 0,oy,od:WAIT
  od=0:IF oy=7 THEN GOSUB clear_row

  IF CONT.LEFT AND px>0 THEN px=px-1:#skier=$0878
  IF CONT.RIGHT AND px<167 THEN px=px+1:#skier=$0880

  IF COL0 AND $0100 THEN GOSUB collision
  IF life>0 AND misses>0 THEN GOTO loop

  GOTO title

clear_row: PROCEDURE
  PRINT AT 11*20 COLOR $2600,"                    "
  port=port+1:IF port=6 THEN GOSUB draw_flags:port=0:GOTO no_trees

  IF RAND%3=0 THEN x1 = RAND%20:PRINT AT 11*20 + x1 COLOR $2604,"\269"

no_trees:
  RETURN
  END

draw_flags: PROCEDURE
  REM RAND is updated once per frame, so the subsequent calls will
  REM pretty much work like calling a variable, not a function

  x1=2 + RAND%7:x2=3 + RAND%3

  PRINT AT 11*20 COLOR $2607,"\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273"

  PRINT AT 11*20 + x1 COLOR $2601,"\270"
  FOR i=1 TO x2:PRINT COLOR $2607,"\256":NEXT
  PRINT COLOR $2602,"\270"

  RETURN
  END

collision: PROCEDURE
  REM check BACKTAB at $0200 and forward

  REM in foreground/background mode, STIC is oriented as follows:
  REM
  REM   13   12   11   10    9    8    7    6    5    4    3    2    1    0
  REM +----+----+----+----+----+----+----+----+----+----+----+----+----+----+
  REM |BG  |BG  |GRAM|BG  |BG  |      GRAM/GROM Card #       |   FG Color   |
  REM |Bit2|Bit3|GROM|Bit1|Bit0|          (0 - 63)           |   Bits 0-2   |
  REM +----+----+----+----+----+----+----+----+----+----+----+----+----+----+

  REM bits 14-15 are unused by STIC and could be used to store information

  cx=(px-4)/8:cy=(py-4)/8

  REM cy will always be 2 (fixed at py=20)

  minx=cx-1:if minx<0 then minx=0
  maxx=cx+1:if maxx>19 then maxx=19

  REM nnbb rbbg gggg gccc

  #val=(PEEK(512+cx+cy*20) AND $09F8)/8

  REM PRINT AT 201 COLOR $2601,(#val/100%10+16)*8+6
 REM PRINT (#val/10%10+16)*8+6
  REM PRINT (#val%10+16)*8+6

  IF #val=256 THEN
     SOUND 0,100,10:FOR i=1 TO 5:WAIT:NEXT:SOUND 0,1,0
     score=score+1
  IF py<80 THEN py=py+4
  REM Don't remove slalom posts!
  WHILE (PEEK(512+minx+cy*20) AND $09F8)/8<>270:minx=minx-1:WEND
  WHILE (PEEK(512+maxx+cy*20) AND $09F8)/8<>270:maxx=maxx+1:WEND
  minx=minx+1:maxx=maxx-1
  ELSEIF #val=273 THEN
     PRINT AT 4 COLOR $2601,"MISSED PORT!"
  FOR i=1 TO 20:SOUND 0,600+i*20,10:WAIT:next
  SOUND 0,1,0:PRINT AT 4,"            ":misses=misses-1
  ELSE
     PRINT AT 5 COLOR $2601,"COLLISION!"
  FOR i=1 TO 20:SOUND 0,800+i*10,10:WAIT:next
  SOUND 0,1,0:PRINT AT 5,"          ":life=life-1
  END IF

  FOR i=cy-1 TO cy+1:FOR j=minx TO maxx:POKE 512+j+i*20,$2600:NEXT:NEXT

  RETURN
  END

graph:
REM 256 = between posts
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"

  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"

  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"

  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"

  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"

  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"

  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"

  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"

  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"

  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"

  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"

  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"

  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"

graph2:
REM 269 = tree
  BITMAP "00011000"
  BITMAP "00111100"
  BITMAP "01111110"
  BITMAP "00111100"
  BITMAP "01111110"
  BITMAP "11111111"
  BITMAP "00011000"
  BITMAP "00011000"

REM 270 = post
  BITMAP "00011000"
  BITMAP "00111000"
  BITMAP "01111000"
  BITMAP "00011000"
  BITMAP "00011000"
  BITMAP "00011000"
  BITMAP "00011000"
  BITMAP "00011000"

REM 271-272 = skier
  BITMAP "00010000"
  BITMAP "00011000"
  BITMAP "11111111"
  BITMAP "00011000"
  BITMAP "00011001"
  BITMAP "01101110"
  BITMAP "10001000"
  BITMAP "00010000"

  BITMAP "00001000"
  BITMAP "00011000"
  BITMAP "11111111"
  BITMAP "00011000"
  BITMAP "10011000"
  BITMAP "01110110"
  BITMAP "00010001"
  BITMAP "00001000"

REM 273 = outside
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"



  MusicTitle:
	Data 3
	Music  	-    	,	-
	Music  	C4Y   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	E4   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	G4   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	C5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	E5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	D5   	,	-
	Music  	C5   	,	-
	Music  	S    	,	-
	Music  	B4   	,	-
	Music  	S    	,	-
	Music  	C5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	D4   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	F4   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	A4   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	D5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	F5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	E5   	,	-
	Music  	D5   	,	-
	Music  	S    	,	-
	Music  	E5   	,	-
	Music  	S    	,	-
	Music  	F5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	G4   	,	-
	Music  	S    	,	-
	Music  	D5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	C5#  	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	D5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	G4   	,	-
	Music  	S    	,	-
	Music  	E5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	D5#  	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	E5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	G4   	,	-
	Music  	S    	,	-
	Music  	A4   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	F5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	E5   	,	-
	Music  	S    	,	-
	Music  	C5   	,	-
	Music  	S    	,	-
	Music  	D5   	,	-
	Music  	S    	,	-
	Music  	B4   	,	-
	Music  	S    	,	-
	Music  	C5   	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	S    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music  	-    	,	-
	Music	 Repeat




	MusicAction:
	Data 4
	Music  	-    	,	-
	Music  	E2Y   	,	-
	Music  	S    	,	-
	Music  	E3   	,	-
	Music  	S    	,	-
	Music  	D3   	,	-
	Music  	S    	,	-
	Music  	D2   	,	-
	Music  	S    	,	-
	Music  	C2   	,	-
	Music  	S    	,	-
	Music  	C3   	,	-
	Music  	S    	,	-
	Music  	B2   	,	-
	Music  	S    	,	-
	Music  	B2   	,	-
	Music  	S    	,	-
	Music  	E2   	,	-
	Music  	S    	,	-
	Music  	E3   	,	-
	Music  	S    	,	-
	Music  	D3   	,	-
	Music  	S    	,	-
	Music  	D2   	,	-
	Music  	S    	,	-
	Music  	A2   	,	-
	Music  	S    	,	-
	Music  	A2   	,	-
	Music  	S    	,	-
	Music  	B2   	,	-
	Music  	S    	,	-
	Music  	B2   	,	-
	Music  	S    	,	-
	Music  	-    	,	-
	Music	 Repeat
  • Like 1
Link to comment
Share on other sites

  • 1 year later...

 

Back in February 2015, as my first experiment with IntyBASIC, I wrote a very simple slalom game. In honour of the competition and that there was nothing good on TV on a New Year's Eve, I decided to try to wrap it up with some scoring, lives and difficulty ramping. To most part it is tongue in cheek, and if nothing else an example of how easy it is produce smooth scrolling on the Intellivision.

 

attachicon.gifslalom.bin

 

 

 

  REM Slalom
  REM by Anders Carlsson <anders.carlsson@sfks.se>
 
  REM 2015-02-15: Initial version
  REM 2015-12-31: Compo version
 
REM BACKGROUNDS
REM $0000 = BLACK    | $1000 = GREY     | $2000 = DA.GREEN | $3000 = CERISE
REM $0200 = BLUE     | $1200 = CYAN     | $2200 = MI.GREEN | $3200 = L.VIOLET
REM $0400 = RED      | $1400 = ORANGE   | $2400 = YELLOW   | $3400 = LI.GREEN
REM $0600 = L.YELLOW | $1600 = FO.GREEN | $2600 = WHITE    | $3600 = D.CERISE
 
REM FOREGROUNDS
REM $xx00 = BLACK    | $xx04 = DA.GREEN
REM $xx01 = BLUE     | $xx05 = MI.GREEN
REM $xx02 = RED      | $xx06 = YELLOW
REM $xx03 = L.YELLOW | $xx07 = WHITE
 
  REM  WAIT
  DEFINE 0,13,graph:WAIT
  DEFINE 13,5,graph2:MODE 1:WAIT
  score=0
 
title:
  BORDER 7,0:WAIT
  SPRITE 0,0,0,0
  CLS
  FOR i=1 TO 12:PRINT COLOR $2600,"                    ":NEXT
  PRINT AT 0 COLOR $2604,"\262\268\258\268  \257\265 \268  \262\268\258\265 \257\264\268"
  PRINT "\268\260\263\268  \262\267\258\268  \268\261\264\268\265\268\264\268"
  PRINT "\260\265 \268  \268\262\264\268  \268\261\264\268\260\261\264\268"
  PRINT "\259\261\264\268  \268\267\264\268  \268\261\264\268 \261\264\266"
  PRINT "\267\268\263\268\268\264\268\261\264\268\268\264\267\268\263\268 \261\264\268"
 
  PRINT AT 120,"ANDERS CARLSSON 2015"
  PRINT AT 160,"LAST SCORE: "
  PRINT <>score
  WAIT
 
waitbutton:
  IF CONT.BUTTON = 0 THEN GOTO waitbutton
 
  score=0
  life=3:misses=5
 
  BORDER 7,1:WAIT
 
  CLS
  FOR row=1 TO 11:PRINT AT row*20 COLOR $2600,"                    ":NEXT
 
  GOSUB draw_flags
  oy=0:od=0:port=0:score=0
  px=90:py=20
  #skier = $0878 : REM 00sc 1000 0111 1ccc
 
loop:
  IF oy=0 THEN od=4:oy=7 ELSE oy=oy-1
  SPRITE 0,$0300 + px,$0100 + py - oy,#skier
  SCROLL 0,oy,od:WAIT
  od=0:IF oy=7 THEN GOSUB clear_row
 
  IF CONT.LEFT AND px>0 THEN px=px-1:#skier=$0878
  IF CONT.RIGHT AND px<167 THEN px=px+1:#skier=$0880
 
  IF COL0 AND $0100 THEN GOSUB collision
  IF life>0 AND misses>0 THEN GOTO loop
 
  GOTO title
 
clear_row: PROCEDURE
  PRINT AT 11*20 COLOR $2600,"                    "
  port=port+1:IF port=6 THEN GOSUB draw_flags:port=0:GOTO no_trees
 
  IF RAND%3=0 THEN x1 = RAND%20:PRINT AT 11*20 + x1 COLOR $2604,"\269"
 
no_trees:
  RETURN
  END
 
draw_flags: PROCEDURE
  REM RAND is updated once per frame, so the subsequent calls will
  REM pretty much work like calling a variable, not a function
 
  x1=2 + RAND%7:x2=3 + RAND%3
 
  PRINT AT 11*20 COLOR $2607,"\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273\273"
 
  PRINT AT 11*20 + x1 COLOR $2601,"\270"
  FOR i=1 TO x2:PRINT COLOR $2607,"\256":NEXT
  PRINT COLOR $2602,"\270"
 
  RETURN 
  END
 
collision: PROCEDURE
  REM check BACKTAB at $0200 and forward
 
  REM in foreground/background mode, STIC is oriented as follows:
  REM
  REM   13   12   11   10    9    8    7    6    5    4    3    2    1    0  
  REM +----+----+----+----+----+----+----+----+----+----+----+----+----+----+
  REM |BG  |BG  |GRAM|BG  |BG  |      GRAM/GROM Card #       |   FG Color   |
  REM |Bit2|Bit3|GROM|Bit1|Bit0|          (0 - 63)           |   Bits 0-2   |
  REM +----+----+----+----+----+----+----+----+----+----+----+----+----+----+
 
  REM bits 14-15 are unused by STIC and could be used to store information
 
  cx=(px-4)/8:cy=(py-4)/8
 
  REM cy will always be 2 (fixed at py=20)
 
  minx=cx-1:if minx<0 then minx=0
  maxx=cx+1:if maxx>19 then maxx=19
 
  REM nnbb rbbg gggg gccc
 
  #val=(PEEK(512+cx+cy*20) AND $09F8)/8
 
  REM PRINT AT 201 COLOR $2601,(#val/100%10+16)*8+6
 REM PRINT (#val/10%10+16)*8+6
  REM PRINT (#val%10+16)*8+6
 
  IF #val=256 THEN
     SOUND 0,100,10:FOR i=1 TO 5:WAIT:NEXT:SOUND 0,1,0
     score=score+1
  IF py<80 THEN py=py+4
  REM Don't remove slalom posts!
  WHILE (PEEK(512+minx+cy*20) AND $09F8)/8<>270:minx=minx-1:WEND
  WHILE (PEEK(512+maxx+cy*20) AND $09F8)/8<>270:maxx=maxx+1:WEND
  minx=minx+1:maxx=maxx-1
  ELSEIF #val=273 THEN
     PRINT AT 4 COLOR $2601,"MISSED PORT!"
  FOR i=1 TO 20:SOUND 0,600+i*20,10:WAIT:next
  SOUND 0,1,0:PRINT AT 4,"            ":misses=misses-1
  ELSE
     PRINT AT 5 COLOR $2601,"COLLISION!"
  FOR i=1 TO 20:SOUND 0,800+i*10,10:WAIT:next
  SOUND 0,1,0:PRINT AT 5,"          ":life=life-1
  END IF
 
  FOR i=cy-1 TO cy+1:FOR j=minx TO maxx:POKE 512+j+i*20,$2600:NEXT:NEXT
 
  RETURN
  END
 
graph:
REM 256 = between posts
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
 
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
 
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
 
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
 
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
 
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
 
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
 
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
 
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
 
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11110000"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
 
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
  BITMAP "00000000"
 
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
  BITMAP "00001111"
 
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
  BITMAP "11111111"
 
graph2:
REM 269 = tree
  BITMAP "00011000"
  BITMAP "00111100"
  BITMAP "01111110"
  BITMAP "00111100"
  BITMAP "01111110"
  BITMAP "11111111"
  BITMAP "00011000"
  BITMAP "00011000"
 
REM 270 = post
  BITMAP "00011000"
  BITMAP "00111000"
  BITMAP "01111000"
  BITMAP "00011000"
  BITMAP "00011000"
  BITMAP "00011000"
  BITMAP "00011000"
  BITMAP "00011000"
 
REM 271-272 = skier
  BITMAP "00010000"
  BITMAP "00011000"
  BITMAP "11111111"
  BITMAP "00011000"
  BITMAP "00011001"
  BITMAP "01101110"
  BITMAP "10001000"
  BITMAP "00010000"
 
  BITMAP "00001000"
  BITMAP "00011000"
  BITMAP "11111111"
  BITMAP "00011000"
  BITMAP "10011000"
  BITMAP "01110110"
  BITMAP "00010001"
  BITMAP "00001000"
 
REM 273 = outside
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"
  BITMAP "01010101"
  BITMAP "10101010"

 

 

 

is this the only rom?

 

or any other updated one floating around?

Link to comment
Share on other sites

I suppose First Spear might have compiled the extended version with music, but when it comes to gameplay, I haven't done anything. Rather I would offer this game for anyone interested in developing it further, as it started off as a feature test of the language that I whipped up as a roughly playable game on the very late hours on New Years Eve right before the contest ended, partly to fill out the competition so it wouldn't be short of entries.

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...