Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - rain_storm

Pages: 1 2 3 4 [5]
81
ASM / colours in mode 13h
« on: February 12, 2007 »
This is really slow you can notice the screen being updated, How can I speed this up? I have seen tutorials talking about writing directly to the screen buffer but I have never seen a tutorial that allowed the colour to be changed. Also I have gotten this down to 57 bytes is this too big for the effect that Im going for? This is a little test run in preparation for a plasma effect but I thought that if I couldnt get this runnin fast than plasma would be far too slow...

Code: [Select]
org 100h
mov al,13h
int 10h
xor cx,cx
main:
   mov al,cl
   add al,dl
   add al,bl
   shr al,01h
   mov ah,0Ch
   int 10h
   inc cx
   cmp cx,320
   jb  main
   xor cx,cx
   inc dx
   cmp dx,200
   jb  main
   xor cx,cx
   xor dx,dx
   inc bx
   cmp bx,0FFH
   jbe exit
   xor bx,bx
exit:
   mov ah, 01h
   int 16h
   jz  main
   mov ah, 4Ch
   int 21h

82
Challenges & Competitions / SCROLLCOMP: NEONTEXT
« on: February 11, 2007 »
Heres another entry for the compo note that its written in Yabasic so you will need the emulator to run it.

83
Challenges & Competitions / SCROLLCOMP+Scripture Scroll
« on: February 09, 2007 »
I was doing something with a fiery effect and well this is what it developed into ... I really dont know what possessed me

84
Yabasic / Shockwaves FB Fire Effect in Yabasic
« on: February 09, 2007 »
Shockwave wrote this in Freebasic I attempted to translate it into Yabasic. I did this for three reasons

1) To learn how to make a really cool fire effect
2) To learn how to make a really cool fire effect
3) To learn how to make a really cool fire effect

also to cut my teeth with Freebasic by comparing the same code in both Freebasic and Yabasic
man it runs at full speed in the FB but cripples yab even with the resolutions set really low

anyway I thought I would post it all credit goes to Shocky for this one

Code: [Select]

resx = 320
resy = 240
sz = 640/resx
open window 640, 512

dim buffer(resx*resy)
dim flame_buffer(resx*resy)
dim rd(resx), gr(resx), bl(resx)
dim cool_map(resx*resy)
cool_scroll = 0
generate_colours()
make_cool_map()

ticks = 0
oldtime = timer
repeat
   gadd = gadd + 3
   V = 50 + 39*cos(gadd/143)
   scroll_aa()

   m = 120
   rem THIS BIT DRAWS THE FIRE ON THE SCREEN
   for loopy = 0 to resx
      flame_buffer(loopy + (resy/2*resx) ) = resx
   next

   a = 0
   for y = 1 to resy
      for x = 1 to resx a = a + 1
         f = flame_buffer(a)
         setrgb 1, rd(f), gr(f), bl(f)
         fill box x*sz,y*sz to x*sz+sz,y*sz+sz
      next
   next

   ticks = ticks + 1
   ? ticks,"   ", time$
   setdispbuf draw
   draw = 1 - draw
   setdrawbuf draw
   clear window
until (inkey$(0) <> "")
exit

sub scroll_aa()
   d = resx*(resy-4) : rem SCREEN BOUNDS
   rem MOVE OFFSET!
   cool_scroll = cool_scroll + 3
   rem RESET OFFSET IF OFF SCREEN
   if (cool_scroll>resy) cool_scroll = cool_scroll - resy
   rem CONVERT OFFSET INTO VALUE COMPATIBLE WITH OUR 1 DIMENSIONAL ARRAYS.
   c = cool_scroll*resx
   for a = resx to (resx*(resy-2))
      c = c + 1 : rem MOVE ONE LINE DOWN.
      rem IF C OFF SCREEN THEN PUT C BACK AT END OF IST SCAN LINE.
      if (c>d) c = resx
      rem 1280 IS XRES * 2 SO WE SCROLL THE FLAME BUFFER UP 2 LINES AND DARKEN AT SAME TIME TO SAVE SPEED.     
      flame_buffer(a) = flame_buffer(a+resx*2) - cool_map(c+resx*2)
      rem STOP ILLEGAL COLOUR PALETTE REFERENCES.
      if (flame_buffer(a)<0) flame_buffer(a) = 0
   next
   for a = resx to (resx*(resy-2))
      rem CHEAP ANTI ALIAS OF FLAME BUFFER
      b = (flame_buffer(a-resx) + flame_buffer(a+resx) + flame_buffer(a-1) + flame_buffer(a+1))
      b = b/2
      b = b/2
      rem NB, THIS LOOP COULD PROBABLY BE COMBINED WITH ABOVE LOOP TO INCREASE SPEED MORE.
      flame_buffer(a) = b
   next
end sub

sub make_cool_map()
   rem WE'LL PLOT 4000 POINTS IN THE MAP.
   for a = 1 to 4000
      rem RANDOM POINT IN COOL MAP = RANDOM VALUE UP TO resx
      cool_map(ran((resx-1) * (resy-3))+resx) = ran(resx)
   next
   for c = 1 TO 10
      rem THE NUMBER OF AA PASSES, MORE PASSES = BRIGHTER FLAMES.
      for a = resx TO resx*(resy-2)
         rem ACTUALLY DARKENS THE CENTRAL PIXEL SLIGHTLY, IS DESIRABLE..
         b = (cool_map(a-resx)+cool_map(a+resx)+cool_map(a-1)+cool_map(a+1)+cool_map(a))*.2
         if (b<000) b = 0
         if (b>500) b = 500
         cool_map(a) = int(b)
      next
   next
end sub

sub generate_colours()
   rd = 0
   gr = 0
   bl = 0
   for c = 1 to resx
      if (rd<254) rd = rd + sz
      if (c>resx/4) and (gr<255) gr = gr + sz
      if (c>resx/2) and (bl<255) bl = bl + sz
      rd(c) = rd
      gr(c) = gr
      bl(c) = bl
   next
end sub



85
Yabasic / circling text
« on: February 07, 2007 »
Code: [Select]
open window 640, 512
window origin "cc"
cs = cos(pi/900)
sn = sin(pi/900)
for d = 0 to 1
   setdispbuf draw
   draw = 1 - draw
   setdrawbuf draw
   setrgb 1, 255, 000, 000
   setrgb 2, 255, 000, 000
   setrgb 3, 000, 000, 000
   gtriangle -320,000 to  320,000 to 320,-256
   gtriangle -320,000 to  320,000 to 320, 256
   setrgb 2, 000, 000, 000
   gtriangle -320,000 to -320,-256 to 320,-256
   gtriangle -320,000 to -320, 256 to 320, 256
   setrgb 1, 000, 000, 255
   setrgb 2, 000, 000, 000
   setrgb 3, 000, 000, 000
   gtriangle 000,-256 to -320,000 to 320,000
   gtriangle 000, 256 to -320,000 to 320,000
next

00 c = c + 1
   if (c > 27) exit
   read message$
   redim message$(len(message$))
   length = token(message$, message$())
   redim x(length), y(length)
   for l = 1 to length
      ang = l * (pi/length)
      x(l) = cos(ang)*200
      y(l) = sin(ang)*200
   next
   count = 0

10 setdispbuf draw
   draw = 1 - draw
   setdrawbuf draw
   for l = 1 to length
      x = cs*x(l) + sn*y(l)
      y = cs*y(l) - sn*x(l)
      if (y > 0) then
         setrgb 1, y, y, 0
      else
         setrgb 1, -y, -y, 0
      fi
      fill box x-10,y-10 to x+10,y+10
      setrgb 1, y, y, 0
      text x,y-5, message$(l), "cc"
      x(l) = x
      y(l) = y
   next
   count = count + 1
   if (count > 1800) goto 00
   goto 10

data "R A I N S T O R M"
data "P R E S E N T S"
data "H I S . F I R S T"
data "I N T R O"
data "B I G . S H O U T S"
data "G O . O U T . T O"
data "A L L . T H E"
data "G U Y S & G I R L S"
data "F R O M . T H E"
data "F O R U M"
data "S P E C I A L"
data "M E N T I O N"
data "F O R . T H E"
data "G U Y S"
data "F R O M . T H E"
data "Y A B A S I C"
data "B O A R D"
data "B I K E M A D N E S S"
data ". . . C L A N K Y . . ."
data "R A I N S T O R M"
data "S A Y S . H I"
data "H O P E . Y O U"
data "L I K E D . T H I S"
data "I N T R O"
data "B E C A U S E"
data "I T S . O V E R"
data "G O O D - B Y E"



86
Freebasic / FB triangle
« on: February 06, 2007 »
Why is FB choking on triangle #,# to #,# to #,# ???????  the help files dont even have an entry for tris, Ah not to worry I'm not about to give up yet I should really try startin with hello world but I always cut tothe chase lol It appears very C like at first glance I hate C with a passion but I love the inline assembler option I think thats cool its like a get out of jail free card that yabasic really couldve used

87
Yabasic / Spheres of Tears
« on: February 02, 2007 »
I find this one really addictive. Its still missing a splash screen and a menu maybe a selection of levels but as it stands its a working game.

88
Yabasic / Look what I found...
« on: January 24, 2007 »
I salvaged these from the EZboard archives (man its alot of work trawling through there).
Where possible I have included a quote from the author at the top of the code. These are raycasters and I would hate to see them disappear. I am still looking for the thread with rafriers raytracer its got reflections and shadows I gave up cos there is a lot of threads to go through. Someone help me fish out some of these jewels! -

I will add some more here as time goes on but this should get the ball rollin'. Please add in some that I missed out on I only searched for 3D so I missed out all the 2D stuff.


89
Yabasic / Yabasic Rocks !!!
« on: January 09, 2007 »
This is probably a little premature but I just had to post this. I am truely proud of this one. I have been attempting to design a raytcaster for yabasic for years now with no success : (

Finally I have achieved this goal! And I think you all will agree that I have truely surpassed myself.
So with without further ado ... The moment you've all been waiting for ... Drum-roll please ... I present ...

YABASIC ROCKS !!! (woo hoo)

controls -
"arrow" keys = move around
"a" key = turn left
"s" or "o" keys = turn right
Well there isn't much in here to do yet but you have to admit that it is cool nonetheless. There is still plenty of room for fun stuff (like people 'n bullets) as well. Peace out.

Updated Version includes a map display (press enter to toggle on/off)
other features
1) faster algorythm
2) more accurate intersection with walls
3) new areas of the map are loaded into memory on the fly
4) weather effects including 3d lightning
5) The level editor I use to create the map
+ other minor additions

90
Yabasic / Real Time 3D Interiors
« on: December 28, 2006 »
Okay this is something I've been at for a while now and I think I'm finally on to something,
Originally my 3D engines where a marriage between the old familiar WORMS demo and the 3D CUBE demo that were included in the PS2 yabasic. Basically the collision map (grid(x, y) in the WORMS demo) held the centre point for the cube which was replotted and redrawn for each grid entry that was considered a wall. That technique yielded some results (25 fps on the PS2 when the grid was a 16x16 array). The were however some short-commings with this approach. The cubes often vanished when you stood with your shoulder to the wall such that your line of sight was paralelle with the wall, this left half the screen taken up with the background when surely there should have been a wall.
 This time I have opted for a different approach. The collision map is only used for detecting collisions and a polygon mesh is used to define the rooms appearance. It was necessary to weed out the non visible walls. To achieve this I calculated the crossproduct of each point relative to both the left extreme of vision and the right extreme of vision. Any wall which had one point within the field of view and one point outside the FOV would have to be cropped. Now we cast out two rays (one for each extreme of vision) & calculate the intersection points. Up to now everything is done in 2D. All that is left is to rotate whats the scene, add a vertical dimension and apply perspective.
 I haven't yet checked out the fps for this algorithm but it doesn't suffer any slowdown (at least not noticeably). I still have to sort out a bug in the lighting effects and everything still has to be cleaned up a lot. But it works... Now where do I go from here?
Code: [Select]
init_game()

label game
 draw_grid(grid)
 ctrl = peek("port1")
 if (ctrl <> 0) ctrl_user(ctrl)
 goto game

sub draw_grid(grid) local x, y, w
 if (intro <= 3) then
  setrgb 1, 255, 255, 000
  text 0,240, message$(intro), "cc"
  count = count + 1
  if (count > display) then
   count = 0
   intro = intro + 1
  fi
 fi
 setdispbuf draw
 draw = 1 - draw
 setdrawbuf draw
 horizon =-256*tn(rotx(0))*2
 setrgb 1, 255,255,255
 setrgb 2, 255,255,255
 setrgb 3, 000,000,000
 gtriangle -320,-256 to 320,-256 to 320,horizon
 setrgb 2, 000,000,000
 gtriangle -320,-256 to -320,horizon to 320,horizon
 setrgb 1, 255,000,000
 setrgb 2, 255,000,000
 setrgb 3, 000,000,000
 gtriangle -320,256 to 320,256 to 320,horizon
 setrgb 2, 000,000,000
 gtriangle -320,256 to -320,horizon to 320,horizon

 for w = 1 to walls
  if (tz(w,1) > 0) and (tz(w,3) > 0) then
   lt1 = lt1(w)
   lt2 = lt2(w)
   setrgb 1, red(w)*lt1, grn(w)*lt1, blu(w)*lt1
   setrgb 2, red(w)*lt1, grn(w)*lt1, blu(w)*lt1
   setrgb 3, red(w)*lt2, grn(w)*lt2, blu(w)*lt2
   gtriangle tx(w,1),ty(w,1) to tx(w,2),ty(w,2) to tx(w,3),ty(w,3)
   setrgb 2, red(w)*lt2, grn(w)*lt2, blu(w)*lt2
   gtriangle tx(w,1),ty(w,1) to tx(w,4),ty(w,4) to tx(w,3),ty(w,3)
  fi
 next
 for y = 1 to gridy
  for x = 0 to gridx
   if (grid(x, y) <> 0) then
    if    (grid(x, y) = wall) then setrgb 1, 100, 100, 100
    elsif (grid(x, y) = door) then setrgb 1, 200, 120, 080
    fi
    fill box x*m-300, y*m-240 to x*m+m-300, y*m+m-240
   fi
  next
 next
 setrgb 1, 000,000,255
 fill circle posx(0)*m-300, posy(0)*m-240, m/2
end sub

sub rota_grid()
 cx = -cs(rotx(0))
 sx = -sn(rotx(0))
 cy = -cs(roty(0))
 sy = -sn(roty(0))
 cz = -ct(rotz(0))
 sz = -tn(rotz(0))
 posx = posx(0)*m
 posy = posy(0)*m
 posz = posz(0)*m
 for w = 1 to walls
  px = ix1(w)*m-posx
  py = iy1(w)*m-posy
  pz =-m/2-posz
  nx = cz*px + sz*py
  ny = cz*py - sz*px
  nz = cy*pz + sy*nx
  tx = cy*nx - sy*pz
  ty = cx*ny + sx*nz
  tz = cx*nz - sx*ny
  tx(w,1) = tx*400/ tz
  ty(w,1) = ty*400/ tz
  tz(w,1) = tz
  pz = m/2-posz
  nz = cy*pz + sy*nx
  tx = cy*nx - sy*pz
  ty = cx*ny + sx*nz
  tz = cx*nz - sx*ny
  tx(w,2) = tx*400/ tz
  ty(w,2) = ty*400/ tz
  tz(w,2) = tz
  px = ix2(w)*m-posx
  py = iy2(w)*m-posy
  pz = m/2-posz
  nx = cz*px + sz*py
  ny = cz*py - sz*px
  nz = cy*pz + sy*nx
  tx = cy*nx - sy*pz
  ty = cx*ny + sx*nz
  tz = cx*nz - sx*ny
  tx(w,3) = tx*400/ tz
  ty(w,3) = ty*400/ tz
  tz(w,3) = tz
  pz =-m/2-posz
  nz = cy*pz + sy*nx
  tx = cy*nx - sy*pz
  ty = cx*ny + sx*nz
  tz = cx*nz - sx*ny
  tx(w,4) = tx*400/ tz
  ty(w,4) = ty*400/ tz
  tz(w,4) = tz
 next
end sub

sub cast_rays()
 leftz = rotz(0) - 32 : if (leftz < 000) leftz = leftz + 255
 rigtz = rotz(0) + 32 : if (rigtz > 255) rigtz = rigtz - 255
 posx = posx(0)
 posy = posy(0)
 cs_lz = cs(leftz)
 sn_lz = sn(leftz)
 cs_rz = cs(rigtz)
 sn_rz = sn(rigtz)
 cslz = cs(leftz) + posx
 snlz = sn(leftz) + posy
 csrz = cs(rigtz) + posx
 snrz = sn(rigtz) + posy
 for w = 1 to walls
  cp1(w) = 0
  cp1 = (posx-wx1(w))*(snlz-wy1(w)) - (cslz-wx1(w))*(posy-wy1(w))
  if (cp1 > 0) then
   cp2 = (posx-wx1(w))*(snrz-wy1(w)) - (csrz-wx1(w))*(posy-wy1(w))
   if (cp2 < 0) then
    cp1(w) = 1
    ix1(w) = wx1(w)
    iy1(w) = wy1(w)
   fi
  fi
  cp2(w) = 0
  cp1 = (posx-wx2(w))*(snlz-wy2(w)) - (cslz-wx2(w))*(posy-wy2(w))
  if (cp1 > 0) then
   cp2 = (posx-wx2(w))*(snrz-wy2(w)) - (csrz-wx2(w))*(posy-wy2(w))
   if (cp2 < 0) then
    cp2(w) = 1
    ix2(w) = wx2(w)
    iy2(w) = wy2(w)
   fi
  fi

  if (cp1(w) = 0) then
   if    (wx1(w) = wx2(w)) then
    opp = wx1(w) - posx
    adj = opp/cs_lz*sn_lz + posy
    if    (adj > wy1(w)) and (adj < wy2(w)) then
     ix1(w) = wx1(w)
     iy1(w) = adj
    elsif (adj < wy1(w)) and (adj > wy2(w)) then
     ix1(w) = wx1(w)
     iy1(w) = adj
    fi
   elsif (wy1(w) = wy2(w)) then
    adj = wy1(w) - posy
    opp = adj/sn_lz*cs_lz + posx
    if    (opp > wx1(w)) and (opp < wx2(w)) then
     ix1(w) = opp
     iy1(w) = wy1(w)
    elsif (opp < wx1(w)) and (opp > wx2(w)) then
     ix1(w) = opp
     iy1(w) = wy1(w)
    fi
   fi
  fi
  if (cp2(w) = 0) then
   if    (wx1(w) = wx2(w)) then
    opp = wx2(w) - posx
    adj = opp/cs_rz*sn_rz + posy
    if    (adj > wy1(w)) and (adj < wy2(w)) then
     ix2(w) = wx2(w)
     iy2(w) = adj
    elsif (adj < wy1(w)) and (adj > wy2(w)) then
     ix2(w) = wx2(w)
     iy2(w) = adj
    fi
   elsif (wy1(w) = wy2(w)) then
    adj = wy2(w) - posy
    opp = adj/sn_rz*cs_rz + posx
    if    (opp > wx1(w)) and (opp < wx2(w)) then
     ix2(w) = opp
     iy2(w) = wy2(w)
    elsif (opp < wx1(w)) and (opp > wx2(w)) then
     ix2(w) = opp
     iy2(w) = wy2(w)
    fi
   fi
  fi
  for l = 1 to light
   opp = ix1(w)-lx(l)
   adj = iy1(w)-ly(l)
   hyp1 = sqrt(sqr(opp)+sqr(adj))/lit(l)
   lt1(w) = 1/hyp1 + lt1(w)
   opp = ix2(w)-lx(l)
   adj = iy2(w)-ly(l)
   hyp2 = sqrt(sqr(opp)+sqr(adj))/lit(l)
   lt2(w) = 1/hyp2 + lt2(w)
  next
  lt1(w) = lt1(w) / 4
  lt2(w) = lt2(w) / 4
  if (lt1(w) > 1) lt1(w) = 1
  if (lt2(w) > 1) lt2(w) = 1
  ? lt1(w),lt2(w)
 next
 ?
end sub

sub ctrl_user(ctrl) local dirx, diry, torx, torz, newx, newy
 if    (and(ctrl, ctrl(cr)) <> 0) then torz = 10*rpm
 elsif (and(ctrl, ctrl(sq)) <> 0) then torz =-10*rpm
 fi
 if    (and(ctrl, ctrl(tr)) <> 0) then torx = 10*rpm
 elsif (and(ctrl, ctrl(ex)) <> 0) then torx =-10*rpm
 fi
 rotz(0) = rotz(0) + torz
 if    (rotz(0) < 000) then rotz(0) = rotz(0) + 255
 elsif (rotz(0) > 255) then rotz(0) = rotz(0) - 255
 fi
 rotx(0) = rotx(0) + torx
 if    (rotx(0) > 128) then rotx(0) = 128
 elsif (rotx(0) < 000) then rotx(0) = 000
 fi

 if    (and(ctrl, ctrl(up)) <> 0) then
  dirx = cs(rotz(0))
  diry = sn(rotz(0))
 elsif (and(ctrl, ctrl(dn)) <> 0) then
  dirx =-cs(rotz(0))
  diry =-sn(rotz(0))
 fi
 if    (and(ctrl, ctrl(rt)) <> 0) then
  dirx = ct(rotz(0)) + dirx
  diry = tn(rotz(0)) + diry
 elsif (and(ctrl, ctrl(lf)) <> 0) then
  dirx =-ct(rotz(0)) + dirx
  diry =-tn(rotz(0)) + diry
 fi
 dirx = dirx*mps/4
 diry = diry*mps/4
 newx = posx(0) + dirx
 newy = posy(0) + diry
 hit = grid(newx, newy)
 if    (hit = door) then
  source = grid
  grid = des(node(newx, newy))
  load_grid(grid)
  newx = posx(0)
  newy = posy(0)
 elsif (hit <> flor) then
  newx = posx(0)
  newy = posy(0)
 fi
 posx(0) = newx
 posy(0) = newy
 cast_rays()
 rota_grid()
end sub

sub load_grid(grid) local x, y, w, g
 find_grid(grid)
 read gridx, gridy
 redim grid(gridx, gridy), node(gridx, gridy)
 for y = 1 to gridy read g
  for x = 0 to gridx grid(x, y) = 0 : node(x, y) = 0
   if (and(g, ctrl(x)) <> 0) grid(x, y) = wall
  next
 next
 read doors : if (doors <> 0) load_door(doors)
 read light : if (light <> 0) load_ligt(light)
 read bots : if (bots <> 0) load_bots(bots)
 for d = 0 to doors
  if (des(d) = source) then
   posx = dropx(d)
   posy = dropy(d)
  fi
 next
 posx(0) = posx + 0.5
 posy(0) = posy + 0.5
 read walls
 redim wx1(walls), wy1(walls), wx2(walls), wy2(walls)
 redim ix1(walls), iy1(walls), ix2(walls), iy2(walls)
 redim red(walls), grn(walls), blu(walls)
 redim lt1(walls), lt2(walls)
 redim cp1(walls), cp2(walls)
 redim tx(walls,4), ty(walls,4), tz(walls,4)
 for w = 1 to walls read wx1(w), wy1(w), wx2(w), wy2(w) next
 for w = 1 to walls read red(w), grn(w), blu(w) next
end sub

sub load_bots(bots)
end sub

sub load_door(doors) redim des(doors), dropx(doors), dropy(doors)
 for d = 1 to doors read dx, dy, dropx(d), dropy(d), des(d)
  grid(dx, dy) = door
  node(dx, dy) = d
 next
end sub

sub load_ligt(light)
 redim lx(light), ly(light), lit(light)
 for l = 1 to light read lx(l), ly(l), lit(l) next
end sub

sub find_grid(grid) on grid goto 01,02,03,04
01 restore grid_01 : return
02 restore grid_02 : return
03 restore grid_03 : return
04 restore grid_04 : return
end sub

sub init_game() local p, n, d, deg, degree
 m = 10
 km = 1000*m
 secs = 50
 mins = 60*secs
 hour = 60*mins
 mps = m/secs
 kph = km/hour
 rpm = 255/mins
 degree = pi / 128
 dim cs(255), sn(255), tn(255), ct(255)
 for d = 0 to 255 deg = d*degree
  cs(d) = cos(deg)
  sn(d) = sin(deg)
  ct(d) = cos(deg+pi/2)
  tn(d) = sin(deg+pi/2)
 next
 dim ctrl(16)
 n = 1
 for p = 1 to 16 ctrl(p) = n : n = n*2 next
 up = 05
 rt = 06
 dn = 07
 lf = 08
 tr = 13
 cr = 14
 ex = 15
 sq = 16
 flor = 0
 wall = 1
 door = 2
 redim posx(1), posy(1), posz(1)
 redim rotx(1), roty(1), rotz(1)
 redim dropx(1), dropy(1)
 dropx(0) = 8
 dropy(0) = 8
 grid = 01
 load_grid(grid)
 open window 640,512
 window origin "cc"
 intro = 0
 count = 0
 display = 8*secs
 dim message$(3)
 message$(0) = "Don't be afraid. Stick your chin up ..."
 message$(1) = "Press [Triangle] to look up"
 message$(2) = "Now step foward and claim your destiny ..."
 message$(3) = "Press [D-Pad] to move around"
end sub

label grid_01
data 16,16
data 65535,32769,32769,32769,32769,32769,32769,32769
data 32769,32769,32769,32769,32769,32769,32769,65535
data 1
data 16,08,15,08,02
data 4
data 0.5,0.5,1.5, 16.5,0.5,1.5, 16.5,16.5,1.5, 0.5,16.5,1.5
data 0
data 9
data 01,01,08,01, 08,01,17,01, 17,01,17,08, 17,08,17,09
data 17,09,17,17, 17,17,08,17, 08,17,01,17, 01,17,01,08
data 01,08,01,01
data 255,255,255, 255,255,255, 255,255,255, 150,120,080
data 255,255,255, 255,255,255, 255,255,255, 255,255,255
data 255,255,255

label grid_02
data 16,16
data 65535,32769,32769,32769,32769,32769,32769,32769
data 32769,32769,32769,32769,32769,32769,32769,65535
data 2
data 01,08,02,08,01, 16,08,15,08,03
data 4
data 8.5,0.5,1.5, 16.5,8.5,1.5, 8.0,16.5,1.5, 0.5,8.5,1.5
data 0
data 10
data 01,01,08,01, 08,01,17,01, 17,01,17,08, 17,08,17,09
data 17,09,17,17, 17,17,08,17, 08,17,01,17, 01,17,01,09
data 01,09,01,08, 01,08,01,01
data 255,255,255, 255,255,255, 255,255,255, 150,120,080
data 255,255,255, 255,255,255, 255,255,255, 255,255,255
data 150,120,080, 255,255,255

label grid_03
data 16,16
data 65535,32769,32769,32769,32769,32769,32769,32769
data 32769,32769,32769,32769,32769,32769,32769,65535
data 2
data 01,08,02,08,02, 16,08,15,08,04
data 4
data 0.5,0.5,1.5, 16.5,0.5,1.5, 16.5,16.5,1.5, 0.5,16.5,1.5
data 0
data 10
data 01,01,08,01, 08,01,17,01, 17,01,17,08, 17,08,17,09
data 17,09,17,17, 17,17,08,17, 08,17,01,17, 01,17,01,09
data 01,09,01,08, 01,08,01,01
data 255,255,255, 255,255,255, 255,255,255, 150,120,080
data 255,255,255, 255,255,255, 255,255,255, 255,255,255
data 150,120,080, 255,255,255

label grid_04
data 16,16
data 65535,32769,32769,32769,32769,32769,32769,32769
data 32769,32769,32769,32769,32769,32769,32769,65535
data 1
data 01,08,02,08,03
data 4
data 8.5,0.5,1.5, 16.5,8.5,1.5, 8.0,16.5,1.5, 0.5,8.5,1.5
data 0
data 9
data 01,01,08,01, 08,01,17,01, 17,01,17,08, 17,08,17,17
data 17,17,08,17, 08,17,01,17, 01,17,01,09, 01,09,01,08
data 01,08,01,01
data 255,255,255, 255,255,255, 255,255,255, 255,255,255
data 255,255,255, 255,255,255, 255,255,255, 150,120,080
data 255,255,255
 

91
Yabasic / What happened to all the yabasic forums?!
« on: December 11, 2006 »
What happened to all the Yabasic forums?
I can't believe this!!! For years I have been programming on my PS2, occasionally popping into an internet cafe to print out some source code. Recently I bought my friends old Celeron and now I got an internet connection and what do I find? Not much thats what!! This p155#d me off no end. I was just about to abbandon the idea of posting my games until I found this forum and to my delight there is still some activite yabasic fans. praise the lord. Now its just a matter of typing the code and saving it to my PC. Does anyone know a place where I can upload some files? It makes more sense to link to files rather than paste an entire program into a single post.

Pages: 1 2 3 4 [5]