<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>QBasic Nerd</title>
		<link>http://www.allegro.cc/forums/view/593311</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Fri, 21 Sep 2007 12:30:01 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I ran across this video on youtube, and it ended up being a lot better than I thought it would be at the beginning.</p><p><a href="http://www.youtube.com/watch?v=Mal6XbN5cEg">Clicky</a>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Thu, 20 Sep 2007 09:05:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Same here <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Johan Halmén)</author>
		<pubDate>Thu, 20 Sep 2007 09:16:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think he forgot to back-up his brain. Which only adds to the hilariousness.</p><p>This made me stop and think, why don&#39;t I make back-ups? What&#39;s wrong with me? Am I an idiot? How do I do it? Do I just copy important files to somewhere else (not on the same hard-drive)? Next time my system screws up I&#39;d like to be able to fix it myself.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Thu, 20 Sep 2007 09:17:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Do I just copy important files to somewhere else (not on the same hard-drive)? Next time my system screws up I&#39;d like to be able to fix it myself.
</p></div></div><p>
How did you manage to figure out how the mouse worked?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kazzmir)</author>
		<pubDate>Thu, 20 Sep 2007 09:23:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I was a QBasic Nerd once. <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" /></p><p>Then I became a QuickBasic 4.5 Nerd. <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" /></p><p><span class="remote-thumbnail"><span class="json">{"name":"monopoly.png","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/9\/593ad0fe2d661adaa0f6cd1508e4c826.png","w":652,"h":547,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/9\/593ad0fe2d661adaa0f6cd1508e4c826"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/5/9/593ad0fe2d661adaa0f6cd1508e4c826-240.jpg" alt="monopoly.png" width="240" height="201" /></span></p><p>It&#39;s hard to imagine that is 14 years old now. <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Thu, 20 Sep 2007 09:30:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
How did you manage to figure out how the mouse worked?
</p></div></div><p>

Well, the first day of reading in my Intro to Programming Basic class had all this neat stuff about how to use a mouse, like what single and double clicking is...</p><p>I really wish that was a joke.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Thu, 20 Sep 2007 09:35:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I actually enjoyed that video <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />. I can totally relate to the whole &#39;lost all my programs&#39; thing.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mokkan)</author>
		<pubDate>Thu, 20 Sep 2007 11:11:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I can totally relate to the whole &#39;lost all my programs&#39; thing.
</p></div></div><p>
I can&#39;t. When I got my first computer (a 286) I already backed up all my &quot;important&quot; stuff on 5.25&quot; floppies. And the weird thing about that - most of them still work. <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" /><br />Can&#39;t say the same about my 3.5&quot; ones.</p><p>QBasic brings back memories of course... my first text adventure. <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Simon Parzer)</author>
		<pubDate>Thu, 20 Sep 2007 13:41:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Heh. I had to help numerous people (mostly girls) in my QBASIC class back in grade 9.</p><p>The teacher got pissed at me because the students weren&#39;t learning anything when I fixed their errors.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Archon)</author>
		<pubDate>Thu, 20 Sep 2007 15:36:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nice video <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" /></p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
This made me stop and think, why don&#39;t I make back-ups?
</p></div></div><p>
Same here <img src="http://www.allegro.cc/forums/smileys/rolleyes.gif" alt="::)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (OICW)</author>
		<pubDate>Thu, 20 Sep 2007 15:54:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><b>wanders off and makes backup of his sources files</b>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Yodhe23)</author>
		<pubDate>Thu, 20 Sep 2007 17:20:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I saw that video on irc last night.. i laughed. that guy has a lot of talent. I learned qbasic from the f1 help file. Hahah.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goalie Ca)</author>
		<pubDate>Thu, 20 Sep 2007 21:59:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
The teacher got pissed at me because the students weren&#39;t learning anything when I fixed their errors.
</p></div></div><p>

My teacher was awamzed when I went online and learned how to do things he couldn&#39;t, like graphics.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Thu, 20 Sep 2007 22:04:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I corrected the errors my teacher did, and we didn&#39;t even have qbasic classes. Or programming classes. Hell, we had a computer room, but no classes to teach us about computers. I feel old. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (deps)</author>
		<pubDate>Thu, 20 Sep 2007 22:06:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
no classes to teach us about computers.
</p></div></div><p>

At least you school wasn&#39;t like mine. They gave the class to a math teacher. He did a pretty awesome job with it, though.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Thu, 20 Sep 2007 22:22:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I really like those digital dice. I lost all my QBasic programs... didn&#39;t feel like they were worth keeping, specially after discovering C.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Rampage)</author>
		<pubDate>Thu, 20 Sep 2007 22:35:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nostalgia.  I love my humble beginnings in Qbasic.  And the like the rest of you, I quickly surpassed the class and teacher because I was so excited to get started in programming.  Plus, there was a hot cheerleader taking the class and so I made sure to use my nerdy skills to impress her, consequently blowing any chance of actually getting any where near her.  Ah, good times.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Onewing)</author>
		<pubDate>Thu, 20 Sep 2007 22:54:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I had a pile of Qbasic programs from my highschool days, but I lost every one of them. <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" /></p><p>They were backed up and everything, too. On SyQuest removable cartridges. A pity my SyQuest drive broke, and I didn&#39;t feel like spending 300 dollars on a new one.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Myrdos)</author>
		<pubDate>Thu, 20 Sep 2007 23:05:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[I'm not a big fan of QBasic, coming to it from other hardware-tied BASICs just made me think that it was really messy —— a not brilliant technology stretched too far. Like the whole DOS experience, really.

Nevertheless, I did write one personally significant program in QBasic:
[img http://members.allegro.cc/ThomasHarte/shots/AnarchyQBASIC.png]

That's now 12 or so years old. And looking at [url http://members.allegro.cc/ThomasHarte/files/anarchyQBASIC/AnarchyQBASICSource.zip]the source code[/url] makes me weep.

EDIT: forget the link! The full source for my sole interesting QBasic program is below. I dare others to post their own, if they have any.
<code>leave = 0: PI = 3.141592654#: zoom = 100: moves = 1: change = 6
   major = 3.2: minor = (1 / change) * major: crswiz = 9: adder = 2
   filled = 1: bcol = 2: lcol = 14: angle = 270
   DIM viewx(4), viewy(4), gone(7)
   DIM cirx(9), ciry(9), wizx(7), wizy(7), gridx1(15), gridy1(15)
   DIM gridx2(15), gridy2(15), gridx3(15), gridy3(15), gridx4(15), gridy4(15)
   DIM psadangle(360), pcadangle(360), curxs(4), curys(4), col(7)
   DIM wiz(7, 50)

   TIMER ON
  
   FOR temp = 0 TO 360
     radangle = (temp * PI) / 180
    
     psadangle(temp) = minor * (SIN(radangle))
     pcadangle(temp) = major * (COS(radangle))
   NEXT temp
   
   GOSUB 240: REM start variables
 
   DO WHILE leave < 1
     GOSUB 30: REM keypresses
     GOSUB 40: REM update
     GOSUB 10: REM point workout
     GOSUB 20: REM display
   LOOP
   GOTO 900: REM end

10 REM pointworkout

   IF angle < 0 THEN angle = 360 + angle
   IF angle > 360 THEN angle = angle - 360
  
   FOR temp = 0 TO 3
     ang = angle + (temp * 90)
     IF ang < 0 THEN ang = 360 + ang
     IF ang > 360 THEN ang = ang - 360
    
     viewx(temp) = x - (zoom * pcadangle(ang))
     viewy(temp) = y - (zoom * psadangle(ang))
   NEXT temp
  
   tx1 = (viewx(0) - viewx(1)) / 150
   ty1 = (viewy(0) - viewy(1)) / 150
   tx2 = (viewx(1) - viewx(2)) / 150
   ty2 = (viewy(1) - viewy(2)) / 150
   tx3 = (viewx(2) - viewx(3)) / 150
   ty3 = (viewy(2) - viewy(3)) / 150
   tx4 = (viewx(3) - viewx(0)) / 150
   ty4 = (viewy(3) - viewy(0)) / 150
                   
   FOR temp = 0 TO 15
     temp10 = temp * 10

     gridx1(temp) = viewx(0) - (tx1 * temp10)
     gridy1(temp) = viewy(0) - (ty1 * temp10)
  
     gridx2(temp) = viewx(1) - (tx2 * temp10)
     gridy2(temp) = viewy(1) - (ty2 * temp10)
    
     gridx3(temp) = viewx(2) - (tx3 * temp10)
     gridy3(temp) = viewy(2) - (ty3 * temp10)
  
     gridx4(temp) = viewx(3) - (tx4 * temp10)
     gridy4(temp) = viewy(3) - (ty4 * temp10)
   NEXT temp
  
   GOSUB 140: REM cursor
  
   RETURN

20 REM display
   SCREEN mode, 1, actscr, visscr
  
   tcol = col(turn)
 
   COLOR 14, bkcol
  
   IF filled = 0 THEN GOTO 21
  
   FOR temp = 0 TO 2
     LINE (viewx(temp), viewy(temp))-(viewx(temp + 1), viewy(temp + 1))
   NEXT temp
   LINE (viewx(3), viewy(3))-(viewx(0), viewy(0))
  
   PAINT (x, y), bcol, 14
  
21 COLOR lcol
  
   FOR temp = 0 TO 15
     tempy = 15 - temp
     LINE (gridx1(temp), gridy1(temp))-(gridx3(tempy), gridy3(tempy))
     LINE (gridx2(temp), gridy2(temp))-(gridx4(tempy), gridy4(tempy))
   NEXT temp
  
   IF moving = 1 THEN GOTO 25
   IF filled = 1 THEN GOTO 22
  
   COLOR col(turn)
   LINE (curxs(0), curys(0))-(curxs(1), curys(1))
   LINE (curxs(1), curys(1))-(curxs(2), curys(2))
   LINE (curxs(2), curys(2))-(curxs(3), curys(3))
   LINE (curxs(3), curys(3))-(curxs(0), curys(0))

22 IF filled = 1 THEN PAINT (curxs(4), curys(4)), col(turn), 14

25 FOR cwiz = 0 TO players - 1
     IF gone(cwiz) = 1 THEN GOTO 23
     GOSUB 50
     COLOR col(cwiz)
    
     IF cwiz <> turn THEN GOTO 24
    
     COLOR 15
     CIRCLE (cirx(0), ciry(0)), wiz(cwiz, 4) * zoom
     COLOR col(cwiz)
     IF start = 0 THEN PAINT (cirx(0), ciry(0)), 15, 15
24   CIRCLE (cirx(1), ciry(1)), wiz(cwiz, 8) * zoom
     CIRCLE (cirx(0), ciry(0)), wiz(cwiz, 4) * zoom
     CIRCLE (cirx(2), ciry(2)), wiz(cwiz, 12) * zoom
     CIRCLE (cirx(3), ciry(3)), wiz(cwiz, 16) * zoom
     CIRCLE (cirx(4), ciry(4)), wiz(cwiz, 20) * zoom
     CIRCLE (cirx(5), ciry(5)), wiz(cwiz, 24) * zoom
    
     LINE (cirx(0), ciry(0))-(cirx(1), ciry(1))
     LINE (cirx(0), ciry(0))-(cirx(2), ciry(2))
     LINE (cirx(0), ciry(0))-(cirx(3), ciry(3))
     LINE (cirx(0), ciry(0))-(cirx(4), ciry(4))
    
23 NEXT cwiz
 
   GOSUB 200
  
   COLOR 15
  
   LINE (180, 0)-(180, 40)
   LINE (0, 40)-(180, 40)
  
   IF cmode = 0 THEN LOCATE (2), (2): PRINT "Rotate  /  Scale"
   IF cmode = 1 THEN LOCATE (2), (2): PRINT "Cursor  Movement"
   IF cmode = 2 THEN LOCATE (2), (2): PRINT "Wizard  Movement"
  
   LINE (0, 0)-(scrx, 0)
   LINE (scrx, 0)-(scrx, scry)
   LINE (scrx, scry)-(0, scry)
   LINE (0, scry)-(0, 0)
   SCREEN mode, 1, visscr, actscr
   CLS
   IF actscr = 0 THEN actscr = 1: visscr = 0: RETURN
   IF actscr = 1 THEN actscr = 0: visscr = 1: RETURN

30 REM keypresses
31 DO
     a$ = INKEY$
   LOOP UNTIL a$ <> ""
   IF INKEY$ <> "" GOTO 31
   GOTO 33

32 a$ = INKEY$
33 oldx = wizx(turn)
   oldy = wizy(turn)
   IF a$ = CHR$(27) THEN leave = 1
   IF a$ = "0" THEN GOSUB 130: REM change turn
   IF a$ = "1" THEN GOSUB 120: GOSUB 90: REM down/left
   IF a$ = "2" THEN GOSUB 120: REM down
   IF a$ = "3" THEN GOSUB 120: GOSUB 100: REM down/right
   IF a$ = "4" THEN GOSUB 90: REM left
   IF a$ = "5" THEN GOSUB 160: REM movement
   IF a$ = "6" THEN GOSUB 100: REM right
   IF a$ = "7" THEN GOSUB 110: GOSUB 90: REM up/left
   IF a$ = "8" THEN GOSUB 110: REM up
   IF a$ = "9" THEN GOSUB 110: GOSUB 100: REM up/right
   IF a$ = "." THEN IF cmode = 1 THEN cmode = 0:  ELSE cmode = cmode + 1
   IF a$ = "b" THEN LET bcol = bcol + 1: IF bcol = 16 THEN bcol = 1
   IF a$ = "k" THEN LET bkcol = bkcol + 1: IF bkcol = 16 THEN bkcol = 1
   IF a$ = "f" THEN filled = filled + 1: IF filled = 2 THEN filled = 0
   IF a$ = "*" THEN GOSUB 210: REM character stats screen . . . by Jay
   IF a$ = "+" THEN IF change >= 6 THEN change = change - .5: GOSUB 230
   IF a$ = "-" THEN IF change <= 15 THEN change = change + .5: GOSUB 230
   IF a$ = "#" THEN DO: LOOP UNTIL INKEY$ <> ""
   RETURN

40 REM update
   x = acr + halfx
   y = dwn + halfy
  
   crswiz = 9
   FOR temp = 0 TO players - 1
     IF curx = wizx(temp) AND cury = wizy(temp) THEN crswiz = temp: temp = players - 1
   NEXT temp
41 RETURN

50 REM WIZARD SYNTAX
   wizxtx = wizx(cwiz) * tx1
   wizxty = wizy(cwiz) * tx2
   wizytx = wizx(cwiz) * ty1
   wizyty = wizy(cwiz) * ty2
   
   temp2 = 0
   FOR temp = 0 TO wiz(cwiz, 0) STEP 4
     cirx(temp2) = viewx(0) - wizxtx + (wiz(cwiz, temp + 1) * tx1) - (wizxty + (wiz(cwiz, temp + 2) * tx2))
     ciry(temp2) = viewy(0) - wizytx + (wiz(cwiz, temp + 1) * ty1) - (wizyty + (wiz(cwiz, temp + 2) * ty2)) - wiz(cwiz, temp + 3) * zoom
     temp2 = temp2 + 1
   NEXT temp
 
   RETURN

90 REM left
   IF cmode = 0 THEN angle = angle - adder: RETURN
   IF cmode = 1 AND NOT curn = 1 AND curx < 136 THEN curx = curx + 10: RETURN
   IF cmode = 2 AND wizx(turn) < 140 THEN wizx(turn) = wizx(turn) + 10: done = done + 1
   RETURN

100 REM right
   IF cmode = 0 THEN angle = angle + adder: RETURN
   IF cmode = 1 AND NOT curn = 1 AND curx > 14 THEN curx = curx - 10: RETURN
   IF cmode = 2 AND wizx(turn) > 9 THEN wizx(turn) = wizx(turn) - 10: done = done + 1
   RETURN

110 REM up
   IF cmode = 0 AND zoom < 900 THEN zoom = zoom + 10: RETURN
   IF cmode = 1 AND NOT curn = 1 AND cury < 136 THEN cury = cury + 10: RETURN
   IF cmode = 2 AND wizy(turn) < 140 THEN wizy(turn) = wizy(turn) + 10: done = done + 1
   RETURN

120 REM down
   IF cmode = 0 AND zoom > 50 THEN zoom = zoom - 10: RETURN
   IF cmode = 1 AND NOT curn = 1 AND cury > 14 THEN cury = cury - 10: RETURN
   IF cmode = 2 AND wizy(turn) > 9 THEN wizy(turn) = wizy(turn) - 10: done = done + 1
   RETURN

130 REM change turn
131 turn = turn + 1: IF turn > players - 1 THEN turn = 0
   IF gone(turn) = 1 THEN GOTO 131
  
   DO
     a$ = INKEY$
   LOOP UNTIL a$ = "": REM clear buffer
  
   curx = wizx(turn): cury = wizy(turn)
   RETURN

140 REM cursor
   IF filled = 1 THEN GOTO 141
  
   curxs(0) = (viewx(0) - ((curx - 5) * tx1)) - (cury + 5) * tx2
   curys(0) = (viewy(0) - ((curx - 5) * ty1)) - (cury + 5) * ty2
   curxs(1) = (viewx(0) - ((curx + 5) * tx1)) - (cury + 5) * tx2
   curys(1) = (viewy(0) - ((curx + 5) * ty1)) - (cury + 5) * ty2
   curxs(2) = (viewx(0) - ((curx + 5) * tx1)) - (cury - 5) * tx2
   curys(2) = (viewy(0) - ((curx + 5) * ty1)) - (cury - 5) * ty2
   curxs(3) = (viewx(0) - ((curx - 5) * tx1)) - (cury - 5) * tx2
   curys(3) = (viewy(0) - ((curx - 5) * ty1)) - (cury - 5) * ty2
   RETURN

141 curxs(4) = (viewx(0) - ((curx + 0) * tx1)) - (cury + 0) * tx2
   curys(4) = (viewy(0) - ((curx + 0) * ty1)) - (cury + 0) * ty2
  
   RETURN

150 REM movement (not)
   upx = wizx(turn) - (curx + 5)
   upy = wizy(turn) - (cury + 5)
  
   curn = 1
  
   IF curx < wizx(turn) THEN GOTO 152
   FOR a = wizx(turn) TO curx + 5 STEP 5
     wizx(turn) = a
     GOSUB 10: REM pointworkout
     GOSUB 20: REM display
     GOSUB 30: REM keypresses
   NEXT a: GOTO 151
  
152 FOR a = wizx(turn) TO curx + 5 STEP -5
     wizx(turn) = a
     GOSUB 10: REM pointworkout
     GOSUB 20: REM display
     GOSUB 30: REM keypresses
   NEXT a
  
151 IF cury > wizy(turn) THEN GOTO 153
   FOR b = wizy(turn) TO cury + 5 STEP -5
     wizy(turn) = b
     GOSUB 10: REM pointworkout
     GOSUB 20: REM display
     GOSUB 30: REM keypresses
   NEXT b: GOTO 154

153 FOR b = wizy(turn) TO cury + 5 STEP 5
     wizy(turn) = b
     GOSUB 10: REM pointworkout
     GOSUB 20: REM display
     GOSUB 30: REM keypresses
   NEXT b
  
154 curn = 0
  
   RETURN

160 REM Real Movement
   IF crswiz = turn THEN GOTO 161
   RETURN

161 done = 0: leaver = 0
   moving = 1
   DO WHILE leaver = 0
     cmode = 2
     GOSUB 30: REM keypresses
     GOSUB 170: REM collision detection
     GOSUB 40: REM update
     GOSUB 10: REM pointworkout
     GOSUB 20: REM display
     GOSUB 170: REM collision detection
     IF done >= moves THEN leaver = 1
   LOOP
   GOSUB 170: REM collision detect
   cmode = 1: moving = 0
   GOSUB 130: REM change turn
   RETURN

170 REM collision detection
   FOR a = 0 TO players - 1
     IF wizx(turn) = wizx(a) AND wizy(turn) = wizy(a) AND NOT a = turn AND NOT gone(a) = 1 THEN playhit = a: a = players - 1: GOSUB 180: REM collision
   NEXT a
   RETURN

180 REM collision
   BEEP
   wizx(turn) = oldx: wizy(turn) = oldy: deady = 0
  
   fightadd1 = INT(RND * 13): fightadd2 = INT(RND * 15)
   IF wizatt(turn) + fightadd1 > 2 + wizdef(playhit) + fightadd2 THEN dead = playhit: deady = 1
   IF wizatt(turn) + fightadd1 > wizdef(playhit) + fightadd2 THEN wizdef(playhit) = wizdef(playhit) - 1: IF wizdef(playhit) = 0 THEN dead = playhit: deady = 1
   IF deady = 1 THEN GOSUB 190: gone(playhit) = 1
  
   done = moves
   nomore = 0
 
   FOR temp = 0 TO players - 1
     handz(temp) = zoom * .3
     IF gone(temp) = 1 THEN nomore = nomore + 1
     IF gone(temp) = 0 THEN winner = temp
   NEXT temp
 
   IF nomore = players - 1 THEN GOSUB 250: REM winning
  
   RETURN

190 REM DEATH
   FOR tempmov = 0 TO 6
     FOR temper = 0 TO 9
       wiz(playhit, temper * 4) = wiz(playhit, temper * 4) + .09
     NEXT temper
    
     GOSUB 40: REM update
     GOSUB 20: REM display
   NEXT tempmov
  
   FOR tempmov = 0 TO 4
     FOR temper = 0 TO 9
       wiz(playhit, temper * 4) = wiz(playhit, temper * 4) - .18
       IF wiz(playhit, temper * 4) < 0 THEN wiz(playhit, temper * 4) = 0
     NEXT temper
   
     GOSUB 40: REM update
     GOSUB 20: REM display
   NEXT tempmov
  
   FOR tempmov = 0 TO 3
     FOR temper = 0 TO 9
       wiz(playhit, temper * 3) = wiz(playhit, temper * 3) + .5
   NEXT temper
  
     GOSUB 40: REM update
     GOSUB 20: REM display
   NEXT tempmov
  
   BEEP: BEEP: BEEP
   RETURN

200 REM BLOKEY BLOKEY
   COLOR 15
   LINE (scrx - 50, scry - 57)-(scrx - 50, scry)
   LINE (scrx - 50, scry - 57)-(scrx, scry - 57)
   PAINT (scrx - 45, scry - 55), 0, 15
  
   COLOR tcol
  
   CIRCLE (scrx - 21, scry - 20), 8
   CIRCLE (scrx - 6, scry - 35), 3
   CIRCLE (scrx - 42, scry - 20), 3
   CIRCLE (scrx - 15, scry - 5), 3
   CIRCLE (scrx - 27, scry - 5), 3
   CIRCLE (scrx - 21, scry - 30), 5
   
   LINE (scrx - 20, scry - 20)-(scrx - 6, scry - 35)
   LINE (scrx - 20, scry - 20)-(scrx - 42, scry - 20)
   LINE (scrx - 20, scry - 20)-(scrx - 15, scry - 5)
   LINE (scrx - 20, scry - 20)-(scrx - 27, scry - 5)
   
   LINE (scrx - 6, scry - 55)-(scrx - 3, scry - 35)
   LINE (scrx - 3, scry - 35)-(scrx - 9, scry - 35)
   LINE (scrx - 9, scry - 35)-(scrx - 6, scry - 55)
   RETURN

210 REM character stats screen
   IF crswiz = 9 THEN RETURN
   SCREEN 2
   PRINT : PRINT
   PRINT "  attack "; wizatt(crswiz)
   PRINT "  defence"; wizdef(crswiz)
   PRINT : PRINT
   PRINT "   Press any key to exit"
   DO
   LOOP UNTIL INKEY$ <> ""
   RETURN

220 REM PLACING
  
   IF players > 2 GOTO 221
   wizx(0) = 25: wizy(0) = 75
   wizx(1) = 125: wizy(1) = 75
   RETURN

221 IF players > 3 GOTO 222
   wizx(0) = 75: wizy(0) = 125
   wizx(1) = 15: wizy(1) = 25
   wizx(2) = 135: wizy(2) = 25
   RETURN

222 IF players > 4 GOTO 223
   wizx(0) = 15: wizy(0) = 15
   wizx(1) = 15: wizy(1) = 135
   wizx(2) = 135: wizy(2) = 135
   wizx(3) = 135: wizy(3) = 15
   RETURN

223 IF players > 5 GOTO 224
   wizx(0) = 75: wizy(0) = 135
   wizx(1) = 135: wizy(1) = 95
   wizx(2) = 15: wizy(2) = 95
   wizx(3) = 105: wizy(3) = 25
   wizx(4) = 45: wizy(4) = 25
   RETURN

224 IF players > 6 GOTO 225
   wizx(0) = 75: wizy(0) = 145
   wizx(1) = 5: wizy(1) = 125
   wizx(2) = 145: wizy(2) = 125
   wizx(3) = 145: wizy(3) = 25
   wizx(4) = 5: wizy(4) = 25
   wizx(5) = 75: wizy(5) = 5
   RETURN

225 IF players > 7 GOTO 226
   wizx(0) = 75: wizy(0) = 145
   wizx(1) = 15: wizy(1) = 135
   wizx(2) = 135: wizy(2) = 135
   wizx(3) = 145: wizy(3) = 45
   wizx(4) = 5: wizy(4) = 45
   wizx(5) = 105: wizy(5) = 5
   wizx(6) = 45: wizy(6) = 5
   RETURN

226
   wizx(0) = 5: wizy(0) = 5
   wizx(1) = 5: wizy(1) = 75
   wizx(2) = 5: wizy(2) = 145
   wizx(3) = 75: wizy(3) = 5
   wizx(4) = 75: wizy(4) = 145
   wizx(5) = 145: wizy(5) = 145
   wizx(6) = 145: wizy(6) = 75
   wizx(7) = 145: wizy(7) = 5
RETURN

230 REM re-calculation
   minor = (1 / change) * major
  
   FOR temp = 0 TO 360
     radangle = (temp * PI) / 180
   
     psadangle(temp) = minor * (SIN(radangle))
     pcadangle(temp) = major * (COS(radangle))
   NEXT temp
   RETURN

240 REM start variables
   INPUT "HOW MANY PLAYERS"; players
   IF players < 2 THEN PRINT "DUH!": GOTO 901
   IF players > 8 THEN PRINT "TOO MANY, but Jay would have won anyway": GOTO 901
 
   INPUT "HIGH OR LOW SCREEN RESOLUTION (0=HIGH/1=LOW)"; res
   IF res = 0 THEN mode = 9: scrx = 639: scry = 349: bkcol = 8
   IF res = 1 THEN mode = 7: scrx = 319: scry = 199: bkcol = 1
   halfx = scrx / 2: halfy = scry / 2:

   FOR temp = 0 TO players - 1
     RANDOMIZE TIMER
     wizatt(temp) = 1 + INT(RND * 5)
     wizdef(temp) = 1 + INT(RND * 5)
   
     RESTORE 800
   
     READ wiz(temp, 0)
    
     FOR temp2 = 1 TO wiz(temp, 0)
       READ wiz(temp, temp2)
     NEXT temp2
   NEXT temp

   RESTORE 810
   FOR temp = 1 TO 15
     COLOR 15
     PRINT temp; ":- ";
     COLOR temp
     READ temp$
     PRINT temp$
   NEXT temp

   FOR temp = 1 TO players
     PRINT "Player "; temp; " colour";
     INPUT col(temp - 1)
     IF col(temp - 1) < 1 OR col(temp - 1) > 15 THEN temp = temp - 1
   NEXT temp
  
   GOSUB 220: REM placing

   curx = wizx(0): cury = wizy(0)
   turn = 0
  
   GOSUB 260: REM START THING
   GOSUB 40: REM update
   GOSUB 10: REM workout
   GOSUB 20: REM display
  
   RETURN

250 REM winner
   SCREEN 2
   PRINT "Player "; winner + 1; " wins"
   DO
   LOOP UNTIL INKEY$ <> ""
   STOP
   RETURN

260 REM START THING
   start = 1
   FOR temper = 1 TO 9
     FOR eventemper = 0 TO players - 1
       wiz(eventemper, temper * 4) = wiz(eventemper, temper * 4) + 1
     NEXT eventemper
   NEXT temper
  
   FOR tempmov = 0 TO 9
     FOR temper = 0 TO 9
       FOR eventemper = 0 TO players - 1
         wiz(eventemper, temper * 4) = wiz(eventemper, temper * 4) - .1
       NEXT eventemper
     NEXT temper
  
     GOSUB 40: REM update
     GOSUB 10: REM workout
     GOSUB 20: REM display
   NEXT tempmov
   start = 0
RETURN

REM !!!!!!WIZARD 3D CO-ORDINATE DATA!!!!!
REM -------------------------------------

800 DATA 24
    DATA 0,0,.15,.08
    DATA 0,5,.3,.03
    DATA 0,-7,.15,.03
    DATA 0,2,0,.03
    DATA 0,-2,0,.03
    DATA 0,0,.25,.05
    DATA 0,5,.5,.001
    DATA 0,6,.3,.001
    DATA 0,4,.3,.001

810 DATA "BLUE","GREEN","CYAN","RED","MAGENTA","BROWN","WHITE","GRAY"
    DATA "L BLUE","L GREEN","L CYAN","L RED","L MAGENTA","YELLOW","BRIGHT WHITE"

900 REM end
    SCREEN mode, 1, visscr, visscr

901 END
</code>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Harte)</author>
		<pubDate>Thu, 20 Sep 2007 23:28:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I never did much with <b>Qbasic</b> beyond what we were forced to do in Programming I. After that, I immediately made the move to <b>C</b> with some of my friends in the class and never looked back. I wrote quite a few programs in Commodore BASIC many years before that, but those were lost eons ago.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Sirocco)</author>
		<pubDate>Thu, 20 Sep 2007 23:46:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Matthew: I think your digital dice are infringing on my intellectual property, as I had done the same thing with QBasic 4.5.  I believe that you stole my proprietary source code and utilized it in your own software.  Expect to be served within the coming days.  (The joke falls apart when you realize that my dice are only around 12 years old.)</p><p>I know as fact that I do not (at the moment at least) have any source code for some of my QBasic programs.  I&#39;m currently trying to find a copy (source or executable) of the last game I wrote with that language: a Wheel of Fortune clone.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (StevenVI)</author>
		<pubDate>Thu, 20 Sep 2007 23:46:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>i really dont miss qbasic or gwbasic
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (le_y_mistar)</author>
		<pubDate>Fri, 21 Sep 2007 00:22:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>QBASIC was where I started, and I&#39;ll never forget my roots.</p><div class="source-code snippet"><div class="inner"><pre><span class="s">'my first program!</span>
<span class="s">CLS</span>
<span class="s">PRINT "Hello World!"</span>
<span class="s">END</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Fri, 21 Sep 2007 01:14:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Harry Carey:
</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Matthew: I think your digital dice are infringing on my intellectual property, as I had done the same thing with QBasic 4.5. I believe that you stole my proprietary source code and utilized it in your own software. Expect to be served within the coming days.
</p></div></div><p>

If your program is compiled into binary, Microsoft wants to talk to you.<br /> <br /><a href="http://www.abarnett.demon.co.uk/msbinary.html">http://www.abarnett.demon.co.uk/msbinary.html</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob Keane)</author>
		<pubDate>Fri, 21 Sep 2007 01:30:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>There were three programs of worth I written (but lost because of a Hard Drive crash) which were for a basic programming class I had in High School (BTW, I introduced graphics to the class <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />). See if you can see the pattern:</p><p>1) A program that drew a pumpkin, holes flashing (via palette), eyes moving up and down, and a sound whose pitch match the height of the eyes (the lowest pitch sound use was when the eyes were at the lowest point, and highest pitch for highest point the eyes went)</p><p>2) A game where you&#39;re a farmer, and you are trying to shoot this one turkey. (Using GET and PUT or whatever for sprites) Turkey&#39;s AI was move in one direction for a random amount of time (there was a range), randomly pick another direction and repeat. When the turkey was over you, you lost health. Funny thing was my computer at home was faster, so at school, the farmer was able to out run the bullets he shot.</p><p>3) A program that displayed a Christmas tree with flashing lights (via palette again), falling snow (drawing simple lines by the time the program was done, only way to rotate the flakes, I think. Was trying to one up someone else in the class), and background music (with the title at the bottom). The thing was, I used a callback or something to keep the music going, and the string with the title up to date. The main loop only dealt with the tree (and maybe the title at the bottom) directly. I actually ported this to Allegro 3.12 (but it was before the crash above anyway). If I were to write it for Allegro again, the music handling would be in a timer function. Basically, if the music was not playing, change to next track, and update the title for the draw logic.</p><p>I may have done others, but not as good as those three.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (MiquelFire)</author>
		<pubDate>Fri, 21 Sep 2007 06:29:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>when i first started programming (9), i liked making making my computer fill the screen with random colours and output random sounds, seizure type of stuff.</p><div class="source-code snippet"><div class="inner"><pre>
<span class="k1">for</span><span class="k2">(</span><span class="k2">;</span><span class="k2">;</span><span class="k2">)</span>
<span class="k2">{</span>
   fill <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a> with <a href="http://www.delorie.com/djgpp/doc/libc/libc_639.html" target="_blank">random</a> color<span class="k2">;</span>
   output <a href="http://www.delorie.com/djgpp/doc/libc/libc_639.html" target="_blank">random</a> pitch
<span class="k2">}</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (le_y_mistar)</author>
		<pubDate>Fri, 21 Sep 2007 08:21:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>My first computer class was Basic, and we would all write programs that flashed colors on the screen and write &quot;VIRUS!!&quot; <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mark Oates)</author>
		<pubDate>Fri, 21 Sep 2007 09:42:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I dare others to post their own, if they have any.
</p></div></div><p>
First off, your source code was truncated because it exceeded the size limit. But if anybody wants a good laugh, my Monopoly source code is very funny.</p><p>I started it when I was 11 or 12 in GW-BASIC. There was no Internet and I didn&#39;t know anybody that programmed. Everything I knew was from C64 books, which obviously wasn&#39;t the same as GW-BASIC.</p><p>The great part is half the code is GW-BASIC with line numbers and absolutely no concept of programming. It starts out:</p><div class="source-code snippet"><div class="inner"><pre><span class="n">10</span> SCREEN <span class="n">0</span><span class="k2">:</span> WIDTH <span class="n">80</span>, <span class="n">43</span><span class="k2">:</span> COLOR <span class="n">11</span>, <span class="n">7</span><span class="k2">:</span> CLS <span class="k2">:</span> RANDOMIZE TIMER: DIM SHARED p$<span class="k2">(</span><span class="n">40</span><span class="k2">)</span>, p<span class="k2">(</span><span class="n">40</span><span class="k2">)</span>, po<span class="k2">(</span><span class="n">40</span><span class="k2">)</span>, dola, dolb, n, alch<span class="k2">(</span><span class="n">14</span><span class="k2">)</span>, alche<span class="k2">(</span><span class="n">15</span><span class="k2">)</span>, mortgage<span class="k2">(</span><span class="n">40</span><span class="k2">)</span>
<span class="n">13</span> cl$ <span class="k3">=</span> <span class="s">"                                                                 "</span>
<span class="n">15</span> FOR n <span class="k3">=</span> <span class="n">1</span> TO <span class="n">40</span><span class="k2">:</span> po<span class="k2">(</span>n<span class="k2">)</span> <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> NEXT n: xxx <span class="k3">=</span> <span class="n">20</span><span class="k2">:</span> yyy <span class="k3">=</span> <span class="n">20</span><span class="k2">:</span> bbb <span class="k3">=</span> xxx: ccc <span class="k3">=</span> yyy
<span class="n">17</span> dola <span class="k3">=</span> <span class="n">1500</span><span class="k2">:</span> dolb <span class="k3">=</span> <span class="n">1500</span><span class="k2">:</span>
</pre></div></div><p>
I had no idea what an array was (nor that they even existed), thus you see &quot;dola&quot; and &quot;dolb&quot; for player 1&#39;s and player 2&#39;s cash respectively. But at some point I had a revelation, and started using arrays. (Thank-you, QBASIC online help.)</p><p>I enjoyed making patterns with QBASIC, since it had such a cool IDE:
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="n">2450</span> FOR n <span class="k3">=</span> <span class="n">1</span> TO <span class="n">2</span></td></tr><tr><td class="number">2</td><td><span class="n">2460</span>  IF n <span class="k3">=</span> <span class="n">1</span> THEN q <span class="k3">=</span> z: LOCATE xxx, yyy: PRINT <span class="s">" "</span></td></tr><tr><td class="number">3</td><td><span class="n">2470</span>   IF n <span class="k3">=</span> <span class="n">2</span> THEN q <span class="k3">=</span> y: LOCATE bbb, ccc: PRINT <span class="s">" "</span></td></tr><tr><td class="number">4</td><td><span class="n">2480</span>    IF q <span class="k3">=</span> <span class="n">1</span> THEN LOCATE <span class="n">27</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">5</td><td><span class="n">2490</span>     IF q <span class="k3">=</span> <span class="n">2</span> THEN LOCATE <span class="n">27</span>, <span class="n">72</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">72</span></td></tr><tr><td class="number">6</td><td><span class="n">2500</span>      IF q <span class="k3">=</span> <span class="n">3</span> THEN LOCATE <span class="n">27</span>, <span class="n">66</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">66</span></td></tr><tr><td class="number">7</td><td><span class="n">2510</span>       IF q <span class="k3">=</span> <span class="n">4</span> THEN LOCATE <span class="n">27</span>, <span class="n">60</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">60</span></td></tr><tr><td class="number">8</td><td><span class="n">2520</span>        IF q <span class="k3">=</span> <span class="n">5</span> THEN LOCATE <span class="n">27</span>, <span class="n">54</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">54</span></td></tr><tr><td class="number">9</td><td><span class="n">2530</span>         IF q <span class="k3">=</span> <span class="n">6</span> THEN LOCATE <span class="n">27</span>, <span class="n">48</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">48</span></td></tr><tr><td class="number">10</td><td><span class="n">2540</span>          IF q <span class="k3">=</span> <span class="n">7</span> THEN LOCATE <span class="n">27</span>, <span class="n">42</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">42</span></td></tr><tr><td class="number">11</td><td><span class="n">2550</span>           IF q <span class="k3">=</span> <span class="n">8</span> THEN LOCATE <span class="n">27</span>, <span class="n">36</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">36</span></td></tr><tr><td class="number">12</td><td><span class="n">2560</span>            IF q <span class="k3">=</span> <span class="n">9</span> THEN LOCATE <span class="n">27</span>, <span class="n">30</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">30</span></td></tr><tr><td class="number">13</td><td><span class="n">2570</span>             IF q <span class="k3">=</span> <span class="n">10</span> THEN LOCATE <span class="n">27</span>, <span class="n">24</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">24</span></td></tr><tr><td class="number">14</td><td><span class="n">2580</span>              IF q <span class="k3">=</span> <span class="n">11</span> THEN LOCATE <span class="n">27</span>, <span class="n">18</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">18</span></td></tr><tr><td class="number">15</td><td><span class="n">2590</span>               IF q <span class="k3">=</span> <span class="n">12</span> THEN LOCATE <span class="n">27</span>, <span class="n">12</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">12</span></td></tr><tr><td class="number">16</td><td><span class="n">2600</span>                IF q <span class="k3">=</span> <span class="n">13</span> THEN LOCATE <span class="n">27</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">27</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">17</td><td><span class="n">2610</span>                 IF q <span class="k3">=</span> <span class="n">14</span> THEN LOCATE <span class="n">24</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">24</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">18</td><td><span class="n">2620</span>                  IF q <span class="k3">=</span> <span class="n">15</span> THEN LOCATE <span class="n">21</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">21</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">19</td><td><span class="n">2630</span>                   IF q <span class="k3">=</span> <span class="n">16</span> THEN LOCATE <span class="n">18</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">18</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">20</td><td><span class="n">2640</span>                    IF q <span class="k3">=</span> <span class="n">17</span> THEN LOCATE <span class="n">15</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">15</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">21</td><td><span class="n">2650</span>                     IF q <span class="k3">=</span> <span class="n">18</span> THEN LOCATE <span class="n">12</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">12</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">22</td><td><span class="n">2660</span>                      IF q <span class="k3">=</span> <span class="n">19</span> THEN LOCATE <span class="n">9</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">9</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">23</td><td><span class="n">2670</span>                       IF q <span class="k3">=</span> <span class="n">20</span> THEN LOCATE <span class="n">6</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">6</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">24</td><td><span class="n">2680</span>                        IF q <span class="k3">=</span> <span class="n">21</span> THEN LOCATE <span class="n">3</span>, <span class="n">6</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">6</span></td></tr><tr><td class="number">25</td><td><span class="n">2690</span>                        IF q <span class="k3">=</span> <span class="n">22</span> THEN LOCATE <span class="n">3</span>, <span class="n">12</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">12</span></td></tr><tr><td class="number">26</td><td><span class="n">2700</span>                       IF q <span class="k3">=</span> <span class="n">23</span> THEN LOCATE <span class="n">3</span>, <span class="n">18</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">18</span></td></tr><tr><td class="number">27</td><td><span class="n">2710</span>                      IF q <span class="k3">=</span> <span class="n">24</span> THEN LOCATE <span class="n">3</span>, <span class="n">24</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">24</span></td></tr><tr><td class="number">28</td><td><span class="n">2720</span>                     IF q <span class="k3">=</span> <span class="n">25</span> THEN LOCATE <span class="n">3</span>, <span class="n">30</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">30</span></td></tr><tr><td class="number">29</td><td><span class="n">2730</span>                    IF q <span class="k3">=</span> <span class="n">26</span> THEN LOCATE <span class="n">3</span>, <span class="n">36</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">36</span></td></tr><tr><td class="number">30</td><td><span class="n">2740</span>                   IF q <span class="k3">=</span> <span class="n">27</span> THEN LOCATE <span class="n">3</span>, <span class="n">42</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">42</span></td></tr><tr><td class="number">31</td><td><span class="n">2750</span>                  IF q <span class="k3">=</span> <span class="n">28</span> THEN LOCATE <span class="n">3</span>, <span class="n">48</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">48</span></td></tr><tr><td class="number">32</td><td><span class="n">2760</span>                 IF q <span class="k3">=</span> <span class="n">29</span> THEN LOCATE <span class="n">3</span>, <span class="n">54</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">54</span></td></tr><tr><td class="number">33</td><td><span class="n">2770</span>                IF q <span class="k3">=</span> <span class="n">30</span> THEN LOCATE <span class="n">3</span>, <span class="n">60</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">60</span></td></tr><tr><td class="number">34</td><td><span class="n">2780</span>               IF q <span class="k3">=</span> <span class="n">31</span> THEN LOCATE <span class="n">3</span>, <span class="n">66</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">66</span></td></tr><tr><td class="number">35</td><td><span class="n">2790</span>              IF q <span class="k3">=</span> <span class="n">32</span> THEN LOCATE <span class="n">3</span>, <span class="n">72</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">72</span></td></tr><tr><td class="number">36</td><td><span class="n">2800</span>             IF q <span class="k3">=</span> <span class="n">33</span> THEN LOCATE <span class="n">3</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">3</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">37</td><td><span class="n">2810</span>            IF q <span class="k3">=</span> <span class="n">34</span> THEN LOCATE <span class="n">6</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">6</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">38</td><td><span class="n">2820</span>           IF q <span class="k3">=</span> <span class="n">35</span> THEN LOCATE <span class="n">9</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">9</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">39</td><td><span class="n">2830</span>          IF q <span class="k3">=</span> <span class="n">36</span> THEN LOCATE <span class="n">12</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">12</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">40</td><td><span class="n">2840</span>         IF q <span class="k3">=</span> <span class="n">37</span> THEN LOCATE <span class="n">15</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">15</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">41</td><td><span class="n">2850</span>        IF q <span class="k3">=</span> <span class="n">38</span> THEN LOCATE <span class="n">18</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">18</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">42</td><td><span class="n">2860</span>       IF q <span class="k3">=</span> <span class="n">39</span> THEN LOCATE <span class="n">21</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">21</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">43</td><td><span class="n">2870</span>      IF q <span class="k3">=</span> <span class="n">40</span> THEN LOCATE <span class="n">24</span>, <span class="n">78</span><span class="k2">:</span> xx <span class="k3">=</span> <span class="n">24</span><span class="k2">:</span> yy <span class="k3">=</span> <span class="n">78</span></td></tr><tr><td class="number">44</td><td><span class="n">2880</span>     IF y <span class="k3">&lt;</span><span class="k3">&gt;</span> z THEN COLOR n <span class="k3">+</span> <span class="n">10</span><span class="k2">:</span> PRINT CHR$<span class="k2">(</span><span class="n">2</span><span class="k2">)</span></td></tr><tr><td class="number">45</td><td><span class="n">2890</span>    IF y <span class="k3">=</span> z THEN COLOR <span class="n">10</span><span class="k2">:</span> PRINT CHR$<span class="k2">(</span><span class="n">2</span><span class="k2">)</span></td></tr><tr><td class="number">46</td><td><span class="n">2891</span>   IF n <span class="k3">=</span> <span class="n">1</span> THEN xxx <span class="k3">=</span> xx: yyy <span class="k3">=</span> yy</td></tr><tr><td class="number">47</td><td><span class="n">2892</span>  IF n <span class="k3">=</span> <span class="n">2</span> THEN bbb <span class="k3">=</span> xx: ccc <span class="k3">=</span> yy</td></tr><tr><td class="number">48</td><td><span class="n">2900</span> NEXT n</td></tr><tr><td class="number">49</td><td><span class="n">2910</span> COLOR <span class="n">15</span><span class="k2">:</span> RETURN</td></tr></tbody></table></div></div><p>

I love it! <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Fri, 21 Sep 2007 10:33:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ouch. My ears  bleed thanks to the Microsoft/Roland GM/GS software synthesizer sounds. Maybe in 20 years this&#39;ll have some camp value, right now it&#39;s just another viable torture method for the Abu Ghraib guards.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (jhuuskon)</author>
		<pubDate>Fri, 21 Sep 2007 12:30:01 +0000</pubDate>
	</item>
</rss>
