Discussion thread for 2019 10-liner Basic competition

Recommended Posts

@Vorticon, feel free to smack my hand if this muddies the water more. I felt like, though, it'd be good to have a discussion thread if anyone wanted to for the 10-liner Basic competition over at http://atariage.com/forums/topic/291836-official-10-liner-program-competition-thread/.

This way, we have the link to the thread (where you're supposed to put your programs, darn it!)- and we can talk about the stuff if we wanted.

I'll start.. I know my Tip Calculator is kinda dopey, but I wanted to get it in there since I was dipping my toes back in the programming- I haven't done any real programming since the 80s for TI Basic. I'm fascinated by the limitations that regular ol' TI Basic gives.

Share on other sites

Maybe we can post our working code here instead of in separate threads?

I made a third entry, MicroTower.

Instructions:

Drive the elevator up and down.

Press fire at the first floor to load a passenger.

Press fire on any other floor to drop them off. (They're not picky.)

If you get a yellow construction worker (looks like a wizard) take them to the roof, where they build another floor.

```
10 CALL CLEAR::F=1::C=9:=24::E=C*8-23::V=169::Z=16::CALL COLOR(9,5,5)::CALL COLOR(10,9,9)::CALL MAGNIFY(2)::CALL SCREEN(15)
20 CALL CHAR(97,"18FF8181818181FF003A327E723232000018183C3C1818000018183C183C7E00", 101,"00000018183C180000182424181A1E0000182C70703C1800005A3C1818183C00")
30 P=Z::F=F+1::CALL MOTION(#P,0,0)::T=24-F*3::FOR I=24 TO T STEP -3::CALL HCHAR(I,C+1,96,D-C-1)::NEXT I::CALL HCHAR(T,C-2,32,2)
40 CALL VCHAR(T-3,C-3,104,28-T)::CALL VCHAR(T-3,C,104,28-T)::CALL VCHAR(T,D,104,25-T)::CALL HCHAR(24,C-3,104,4)::CALL HCHAR(T-3,C-3,104,4)
50 CALL SPRITE(#Z,97,7,V,E,0,0)::U=(192-8*F*3-23)
60 CALL JOYST(1,X,Y)::CALL KEY(1,K,S)::CALL POSITION(#Z,A,B)::IF ((Y<=0 AND A>=V) OR (Y>=0 AND A<=U)) THEN Y=0
70 CALL MOTION(#Z,-Y,0,#P,-Y,0)::IF  K<>18 OR Y<>0 THEN 60 ELSE IF P<Z THEN 90
80 IF A>=V THEN P=INT(RND*F+1)::DISPLAY AT(1,1)::CALL SPRITE(#P,97+P,2+(P*2+8 AND 15),A,B,0,0)::GOTO 60 ELSE 60
90 IF A<=V-20 THEN CALL LOCATE(#P,7+A-INT(A/24),INT(RND*96+73))::IF P=1 AND A<=U AND F<6 THEN 30 ELSE P=Z::GOTO 60 ELSE 60

```

Writing these is so much fun.

Share on other sites

Here is another one. The program is based on one of David H. Ahl's Best Basic Games, so I can't take credit for it.

```
10 INPUT "TORMENT! ENTER A WORD: ": A\$
20 X=1
30 FOR I=1 TO LEN(A\$)
40 X=X*(ASC(SEG\$(A\$,I,1))-64)
50 NEXT I
60 PRINT ::
70 IF X<H(LEN(A\$)) THEN 10
80 PRINT "NEW BEST";LEN(A\$);"LETTER WORD!"::
90 H(LEN(A\$)) = X
100 GOTO 10

Your score is the letter values multiplied. For instance ACE scores 1*3*5.
ZEBRA scores 4680. Try to find the highest scoring word for each length.

```

Share on other sites

@Vorticon, feel free to smack my hand if this muddies the water more. I felt like, though, it'd be good to have a discussion thread if anyone wanted to for the 10-liner Basic competition over at http://atariage.com/forums/topic/291836-official-10-liner-program-competition-thread/.

This way, we have the link to the thread (where you're supposed to put your programs, darn it!)- and we can talk about the stuff if we wanted.

I'll start.. I know my Tip Calculator is kinda dopey, but I wanted to get it in there since I was dipping my toes back in the programming- I haven't done any real programming since the 80s for TI Basic. I'm fascinated by the limitations that regular ol' TI Basic gives.

You are hardcore using TI BASIC. That's truly 10 lines. With XB it's more like 50 statements but limited chances to loop (ELSE can't contain a NEXT for instance).

Share on other sites

You are hardcore using TI BASIC. That's truly 10 lines. With XB it's more like 50 statements but limited chances to loop (ELSE can't contain a NEXT for instance).

Not on the TI, no.

The TRS-80 systems regularly had 2-line contests in magazines; they could go up to 255 characters in a line, AND you had insane BASIC parsing that allowed NEXT after ELSE. I think my favorite though was just "NEXT" without a variable, which meant "end ALL ongoing loops here."

Share on other sites

Not on the TI, no.

The TRS-80 systems regularly had 2-line contests in magazines; they could go up to 255 characters in a line, AND you had insane BASIC parsing that allowed NEXT after ELSE. I think my favorite though was just "NEXT" without a variable, which meant "end ALL ongoing loops here."

Wow.

I had a book of TRS-80 BASIC programs that I tried to adapt to TI Basic. I remember struggling through how to change some constructs.

Share on other sites

I did not want to post this in the submissions thread, but I wanted to let some people know than sometimes when using Cut & Paste text into a message, the text does not show up for people using the "Deflection Theme". Example(s) below. If you go in and highlight the text and change the color to "automatic" that should fix it.

Earlier this morning I was checking out a program and kept getting a syntax error, but could not figure out why. Once I went back in and highlighted the text did I discover it required RXB.

Share on other sites

Looks like I made a bit of a boo boo over on the submission thread for the 10-line TI Basic competition. I posted a V9T9 file when I should have posted a disk image. How would one go about making a disk image?

Share on other sites

Looks like I made a bit of a boo boo over on the submission thread for the 10-line TI Basic competition. I posted a V9T9 file when I should have posted a disk image. How would one go about making a disk image?

I used Tursi's Classic99 emulator then saved it in Basic.

Share on other sites

Looks like I made a bit of a boo boo over on the submission thread for the 10-line TI Basic competition. I posted a V9T9 file when I should have posted a disk image. How would one go about making a disk image?

You could post the BASIC code as a plain text, so the program can be pasted into a disk image or into an emulator.

Or: Using TIImageTool, create a new disk image ("File->New floppy image"), use "Edit->Import from text editor", paste the text into the window, "File->Close and save", choose a file name.

Or: Using TIImageTool, create a new disk image, open your file explorer from your operating system, drag and drop your file into the open window of TIImageTool, rename it if necessary.

Share on other sites

Looks like I made a bit of a boo boo over on the submission thread for the 10-line TI Basic competition. I posted a V9T9 file when I should have posted a disk image. How would one go about making a disk image?

file, create disk image.. creates a disk.. then copy in your v9t9 file

Greg

Share on other sites

Press Ctrl-v to paste your code

Type SAVE DSK1.YOURGAME

Click the Disk tab, and click Save DSK.

Share on other sites

I believe I have a working disk image file posted over in the competition thread! Thanks everyone for all the replies. I've tried all the tools, i.e. Classic99, TIImageTool, TI99Dir and js99er, to try and educate myself. I ended up using TI99Dir for the actual file.

Share on other sites

file, create disk image.. creates a disk.. then copy in your v9t9 file

Greg

Thanks for posting the disk image.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

×   Pasted as rich text.   Paste as plain text instead

Only 75 emoji are allowed.

×   Your previous content has been restored.   Clear editor

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