Omnimaga

General Discussion => Other Discussions => Miscellaneous => Topic started by: Builderboy on July 06, 2010, 01:57:26 am

Title: Silly things you did as a noob
Post by: Builderboy on July 06, 2010, 01:57:26 am
We were all noobs at one time, whether you want to believe it or not :P But making mistakes is all part of learning, so share all your hilarious mistakes here!

Ill start :)

1) I used the product() and sum() commands to access List elements instead of L1(N)
2) I used masses of pixel tests to check a tile type
Title: Re: Silly things you did as a noob
Post by: BrandonW on July 06, 2010, 02:02:47 am
I wrote Windows for the TI-81.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 06, 2010, 02:07:56 am
Each room of Illusiat 1 used to have their very own code, all linked through Goto/Lbl, misused, resulting in ERR:MEMORYs after moving through only 20-30 rooms and making the game about 18 KB large total instead of its current 10 KB (pics included)
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 06, 2010, 02:13:43 am
This is a great idea!

I used If inString(Str1,Str2) and inString(Str2,Str1) instead of If Str1=Str2.

1) I used the product() and sum() commands to access List elements instead of L1(N)

Just a few days ago, I had been using the combination sum(mid(list,n,1)) instead of list[n] to access list elements on an Nspire.
Title: Re: Silly things you did as a noob
Post by: Quigibo on July 06, 2010, 03:41:39 am
I used to code in z80 on calc with no editor.  I just printed out some papers with all the complete instruction list, ram locations, bcalls, and key equates.  I then used the basic editor and typed in the hex code using the calculator to actually compute the offset for the labels, something I would have to change every time I added something new to the beginning of the code.  It was pretty cool that I was able to do that looking back on it, but wow, I was such a noob.  Lets see, this was back in... 2006 when I first discovered the assembly language.

Even worse, It wasn't until the very start of 2010 that I started using emulators or and 8xp converters.  I wasn't typing it by hand, don't think that!  I was taking the hex output from the computer assembler, copy pasting it to TI-Graphlink, sending it to the calculator, compiling it, testing it there (I didn't use emulators), and then sending it back when I wanted to upload the files to the internet.
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 06, 2010, 04:55:36 am
I once made a 20 KB game in which I had over a hundred labels, many of which used If-Then statements with no End. Actually, I didn't know how to use End back then.

And come to think of it, I actually did that seven times -- six times with 20 KB text-based RPGs, and once with a Jeopardy imitation (called Leopardy) that wouldn't let you get halfway through the game because of the memory leak :D
Title: Re: Silly things you did as a noob
Post by: matthias1992 on July 06, 2010, 09:05:42 am
I used to write tremendous amounts of IF's for nealry everything. I know boolanize (if that is a word) as much as I can. ooh and you now what is cool to do in spare time? coding in eso...something languages like: whitespace, Aargh!, BrainF** and l33t.
if you ever thought assembly was hard...
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 06, 2010, 09:13:56 am
Okay, the following is a VERY VERY dumb thing to do. Don't try it.

When I first got my calculator and discovered TI-BASIC, I immediately started working on that 20 KB program described above. I didn't know about groups at the time, so I saved it from RAM clears by archiving. Needless to say, I quickly found my first GarbageCollection message staring me in my face. Unlike some other newb programmers who would instinctively know it's a bad thing (which is the right idea), I thought it was interesting, and after finding that it was caused by unarchiving and archiving repeatedly, I did that, just to see the
Garbage
Collecting…

message several times a day, every day (idiot).
Title: Re: Silly things you did as a noob
Post by: ztrumpet on July 06, 2010, 12:03:50 pm
Let's see.  Attached was my first game ever, and I made it about one week after I started programming.  Download and shudder at the code! ;D

On a side note, it took me a year and a half to discover loops. :P
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 06, 2010, 12:49:38 pm
I think it took me about 6 months, but I'm not sure anymore. If I recall, I discovered For( first, so I had stuff in my code such as

For(Z,0,1
0->Z
code
If <goes outside the screen>
Goto LBL
End

Or stuff like that x.x

Then I discovered about While/Repeat
Title: Re: Silly things you did as a noob
Post by: calcdude84se on July 06, 2010, 03:01:57 pm
I actually discovered other programming languages and learned a good amount about them before getting my calc. :P
The best example I have is that I always used to close my parentheses, brackets, etc.
Also, what may actually be better: I never changed the graphscreen settings. Ever. So code for drawing lines would have lots of deltaX's and deltaY's, Xmin's and Ymax's. :P
Title: Re: Silly things you did as a noob
Post by: thepenguin77 on July 06, 2010, 03:12:45 pm
One of my first programs was to get revenge on some kid. I wanted to make his calculator never turn off so that his batteries would last a few days. I went through the flash debugger and searched for every single 76h (halt). Then I made a program to replace them all with zeros. Here is the source:

Code: [Select]
     LD     A,00
     LD     ($02A3),A
     LD     ($08E9),A
     LD     ($0AA8),A
     LD     ($3E81),A
     LD     ($3F8F),A
     LD     ($3F53),A
     LD     ($3E68),A
     LD     ($3683),A
     LD     ($362F),A
     LD     ($3629),A
     LD     ($3623),A
     LD     ($361D),A
     LD     ($3533),A
     LD     ($3527),A
     LD     ($347F),A
     LD     ($32F9),A
     LD     ($32F3),A
     LD     ($312B),A
     LD     ($2F51),A
     LD     ($2F14),A
     LD     ($2EBA),A
     LD     ($2E79),A
     LD     ($2E5B),A
     LD     ($2E55),A
     LD     ($2E4F),A
     LD     ($2736),A
     RET
Needless to say, it didn't really work right. Not only did he not have an 83+, or os 1.16. But I don't think you can change the OS that easily.
Title: Re: Silly things you did as a noob
Post by: calcdude84se on July 06, 2010, 03:23:18 pm
that ld a,00 should be xor a :P
And yeah, changing the OS involves writing directly to flash. Besides, not every interrupt causes low power mode. It'd be better to change every "ld a,$11 \ out (03h),a" to "ld a,$0B \ out (03h),a" (I guess nop'ing it would work too)
You probably already knew most of this :P
Title: Re: Silly things you did as a noob
Post by: _player1537 on July 06, 2010, 03:24:15 pm
When I first got my calc, I programmed Counting programs constantly (start at 0, and add one each time.  They later got more advanced, and after it was above 10, it would start adding 2, after 100, 3, after 1000, 4 (etc))  I would bring my calc into Mellow Mushroom (a pizza/italian place) and work on my counting programs there ^^

Then I wrote a program that converted between metric units, standard lengths, standard volume, standard weight, temperature, and time.  It ended up being over 9000!! err actually, about 9000 bytes, and was filled with labels, gotos, if Condition:Do something blocks, My metric conversion part looked like:
if StartUnit = "K"
1000->A
if StartUnit = "H"
100->A
if StartUnit = "D"
10->A
...
if EndUnit = "K"
1000->B
if EndUnit = "H"
100->B
if EndUnit = "D"
10->B
...
StartNumber * A / B ->EndNumber

All my friends were crazy about text based rpgs using over 9000 labels/gotos, I offered to make a nice looking menu system so they just have to do "Text To Display ->Str1:PrgmMENU and it would do all the menus for them, but they insisted on Disp "Line 1":Disp "Line 2":Disp "Line3":PrgmGETKEY:If A=1:goto AA:If A=2:Goto BB...etc...
Title: Re: Silly things you did as a noob
Post by: apcalc on July 06, 2010, 03:46:29 pm
When I was first learning TI-BASIC, I originally thought For loops meant that the code inside the loop would only be executed if a certain consition was true, for example if x was less that zero, the code inside the loop would be executed.  Thankfully, I never actually tried to write a program using this concept.
Title: Re: Silly things you did as a noob
Post by: ztrumpet on July 06, 2010, 04:03:03 pm
The best example I have is that I always used to close my parentheses, brackets, etc.
I actually used to do that too, and I made sure all my Disp statements used strings that were 16 characters (yes, padded with spaces). :P
Title: Re: Silly things you did as a noob
Post by: _player1537 on July 06, 2010, 04:04:43 pm
oh, one thing I used to do (and caught my self doing a couple months ago) was making a text en/decoder, you would input a string, it would cycle through that string, and on every line was a "If Str2='A':'Z'->Str3", I knew about instring() and sub(), but never thought to together x.x  I think that's how I got so good at getting to the strings through menus :P
Title: Re: Silly things you did as a noob
Post by: TC01 on July 06, 2010, 06:54:00 pm
Like some others, I used to close all parenthesis, and insert extra parenthesis even when the calculation didn't need them.

Also, the first time I saw a Garbage Collect message on archiving, I wasn't sure what it would do (having not actually read my manual) and so, afraid that it would delete programs from my calculator (as "garbage"), I put off doing it. That meant I never archived anything- and soon after that, my calc got locked up and I needed to pull a battery to reset it, so I lost everything.

This was before I started backing up to my computer too. Fortunately, all I lost were math programs that were on some of my friends' calcs, so it was easy to get them back. Then I read the manual, figured out what garbage collecting did, and started doing computer backups.

(This was all on the 83+).
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 06, 2010, 07:06:47 pm
In many cases, I often accidentally used two : chars between lines of code

I also put my entire programs in one single line of code. In some ways it is good, though, because it saves a lot of time with 2:Goto and when manually scrolling through the code. Otherwise it is risky, because if you press CLEAR you lose everything and the code is hard to read.

Another thing I did a few times: I decided to switch to lowercase letters in some of my BASIC RPGs. BAD idea. I did not realize about lowercase letters being two byte tokens. I eventually ran out of RAM x.x
Title: Re: Silly things you did as a noob
Post by: TC01 on July 06, 2010, 07:25:52 pm
Another thing I did a few times: I decided to switch to lowercase letters in some of my BASIC RPGs. BAD idea. I did not realize about lowercase letters being two byte tokens. I eventually ran out of RAM x.x
That reminds me of something I did when I started programming my 89 Titanium- I used spaces to indent lines of Basic code, like in this sample program, and then I'd add additional spaces to anything under a loop or if statement.

Code: [Select]
hello()
Prgm
 ClrIO()
 Disp "Hello world"
Prgm

Since on the 89 the interpreter ignores all whitespace before code, it didn't cause any problems. Except, each character- including a space- adds a byte to the program size... so the Basic programs I wrote ended up much larger than necessary.

Not that that's so much a problem on the Titanium, since it has so much memory, and it does make the code more readable- but when you realize that for every line under a loop, I would be adding two bytes, and then under an if statement, three bytes, and so on... it could easily get way out of hand.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 06, 2010, 08:15:22 pm
I am glad Axe Parser at least remove those from compiled code (altough sadly, if you lose your source, all you can retrieve afterward is the ASM disassembly of your Axe program, free of all comments)
Title: Re: Silly things you did as a noob
Post by: bwang on July 06, 2010, 09:04:07 pm
Back when I first started programming, it took me a couple days to find out where the For, While, If, and Then statements lived. I was very confused because typing F, O, R gave me a syntax error :(
Title: Re: Silly things you did as a noob
Post by: _player1537 on July 06, 2010, 09:09:53 pm
lol, I did that too, for the guessing game I think it was, the one that was in the manual, I used MOS to give me lowercase letters, and wrote out each command letter by letter.  I learned later the meaning of that random catalog button on the 0 key.

I also used to get really screwed by the way that MOS turned on fast keys, and the lowercase letters one (though not as much)  I had no idea that those were even in MOS, I just assumed my calculator was spazzing out, when I tried to insert a line, I'd delete 5 letters, when I tried to move one letter to the right, I'd be halfway down the page.  The only way I knew to fix it was ram clear, then not run MOS (I figured out that MOS was doing it after a while, so it became less my favorite shell).  Then I went to DetachedSolutions, and saw that MOS had those options x.x
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 06, 2010, 09:10:33 pm
haha on the TI-80, I remember many people did that XD

All tokens were all-caps so people thought they could type alpha tokens instead
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 06, 2010, 10:10:51 pm
The first platformer I ever made was exactly 9001 bytes ... and I wasn't even trying. In fact, I'd never even heard of the meme.
Title: Re: Silly things you did as a noob
Post by: Builderboy on July 07, 2010, 02:24:24 am
In the original version of Portal the external level editor always saved to the same custom List, and was always loaded from the same custom List.  So you could only have one custom level on your calculator at the same time unless you were tricky :P
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 07, 2010, 02:57:49 am
D:

Kinda like xLIB xLIB Revolution D:

You needed to ungroup a level everytime x.x (and they were HUGE!)
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 07, 2010, 03:07:29 am
Mine was even worse: that OVER 9000! byte program I mentioned above allowed custom levels, but the "level editor" was basically an empty Input "",Str1, where you would have to type out the entire code for the level by hand (assuming every user instinctively knew how I coded my levels and could code an impromptu level exactly :P).
Title: Re: Silly things you did as a noob
Post by: ztrumpet on July 07, 2010, 10:59:14 am
In the original version of Portal the external level editor always saved to the same custom List, and was always loaded from the same custom List.  So you could only have one custom level on your calculator at the same time unless you were tricky :P
Yup, but I've still used it to make levels of my own. :P
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 17, 2010, 02:21:52 pm
Full
ClrHome
Output(1,1,"WELCOME TO PRGM NAME. HERE ARE   THE INSTRUCTIONS ON HOW TO USE IT.
Pause
ClrHome
Output(1,1,"FIRST, THE      CONTROLS:
Pause
ClrHome
Output(1,1,"ARROWS: MOVE    ENTER: CONFIRM  (-): MENU/CANCELON: EXIT
Pause
ClrHome

What's in red was unnecessary, this is something I did often in my early days of programming x.x. It can make things uniform by flashing the screen, but it's so fast that it's hard to notice and on 15 MHz platforms it's hardly even noticeable, even less at higher contrast.

Another thing I did was Stuff like:

ClrHome
Output(1,1,"CONTROLS        2ND:JUMP        ^v<>:MOVE       CLEAR:EXIT

Instead of
ClrHome
Disp "CONTROLS","2ND:JUMP","^v<>:MOVE","CLEAR:EXIT

The later is slower but much smaller.
Title: Re: Silly things you did as a noob
Post by: shmibs on July 17, 2010, 03:40:03 pm
my first serious prog was an incredibly massive, ye cannot get ye flask style text based adventure with an obcene number of goto's and lbl's. it was structured something like this:

lbl a
clrhome
disp "room introductory text here (i.e. "you find yourself standing in a barren field"
input str1
check here if str1="go n","go s" etc...
goto lbl depending on which command was typed
call err prgm ("no hablo stupid" or another err command randomly displayed
lbls for in room actions (i.e. get ye flask
goto a
lbl prgm (for move between room commands(i.e. go n

in this way i ended up having a game that was 100+k with seperate programs for every single room (i used zarchive for swapping which set was in RAM) that had more err mem's than even a nub has excuses for. i still really liked how it turned out, though, and it made me sad when my brother clrd my memory while screwing around with stuff

EDIT: i did the all on one line thing too because (i think, but i tested this forever ago and havent looked into it) lbl goto statements only check the beginnings and ends of lines and so it only has to search 6 or 8 spots in the program instead of twice for every line, speeding things up so you can get that memory error much more quickly :P. the habit stuck and i got so used to reading it that way that now i have trouble understanding clean-cut coding(my problems with short term memory also probably apply here; i have to have as much code on the tiny screen as possible or i'll forget where i am
Title: Re: Silly things you did as a noob
Post by: Eeems on July 17, 2010, 03:49:51 pm
I had the same issue with typing out the commands, but I figured it out pretty quick. I also made tonns of memory leaks...
I remember I made a few changes to someones program and uploaded it to ticalc x.x I did at least tell people what I had changed it from...hmm, speaking of which, how do you delete files on ticalc? I've been meaning to get rid of it for a long while....
Title: Re: Silly things you did as a noob
Post by: FinaleTI on July 17, 2010, 05:16:37 pm
You made this: http://www.ticalc.org/archives/files/fileinfo/412/41215.html (http://www.ticalc.org/archives/files/fileinfo/412/41215.html)

It makes me so sad. I was such a noob, all the different areas have their own copies of the RPG Starter Kit (Meaning their own map set, movement engine and event program). This could have easily been astronomically smaller. It also might have helped if I'd actually beaten FF4 before I tried to make a sequel.
Title: Re: Silly things you did as a noob
Post by: miotatsu on July 17, 2010, 05:47:36 pm
my first program:
Code: [Select]
::"FIREWORKS
:getKey
:ClrHome
:4→X
:8→Y
:4→Z
:Lbl A
:Output(1,1,"::::FIREWORK::::"
:Output(2,5,"{-}{-}{-}{-}{-}{-}{-}{-}"
:Output(4,5,"EXPLODE!"
:Output(5,5,"QUIT"
:Output(8,1,"................"
:Output(Z,4,"["
:Output(Z,13,"]"
:While 1
:getKey→B
:While B=0
:getKey→B
:End
:If B=25
:Goto UP
:If B=34
:Goto DN
:If B=105
:Goto EN
:If B=45
:Goto X
:If B≠25 or 34 or 105 or 45
:Goto A
:Lbl UP
:Output(Z,4," "
:Output(Z,13," "
:Z-1→Z
:If Z=3
:5→Z
:Goto A
:Lbl DN
:Output(Z,4," "
:Output(Z,13," "
:Z+1→Z
:If Z=6
:4→Z
:Goto A
:Lbl EN
:If Z=4
:Goto EX
:If Z=5
:Goto X
:End
:Lbl EX
:ClrHome
:For(A,0,100
:Output(X,Y,"{box}
:End
:8→V
:Lbl PI
:getKey
:Output(8,V,"π"
:While 1
:getKey→B
:While B=0
:getKey→B
:End
:If B=24
:Goto LT
:If B=26
:Goto RT
:If B=105
:Goto ST
:If B≠24 or 35 or 105
:Goto PI
:End
:Lbl LT
:Output(8,V," "
:V-1→V
:If V=1
:2→V
:Goto PI
:End
:Lbl RT
:Output(8,V," "
:V+1→V
:If V=16
:15→V
:Goto PI
:End
:Lbl ST
:If V=8
:Goto BO
:If V≠8
:For(A,0,20
:Output(7,V,"º
:End
:For(A,0,20
:Output(6,V,"º
:Output(7,V,"
:End
:For(A,0,20
:Output(5,V,"º
:Output(6,V,"
:End
:For(A,0,20
:Output(4,V,"º
:Output(5,V,"
:End
:For(A,0,20
:Output(3,V,"º
:Output(4,V,"
:End
:For(A,0,20
:Output(2,V,"º
:Output(3,V,"
:End
:For(A,0,20
:Output(1,V,"º
:Output(2,V,"
:End
:For(A,0,20
:Output(1,V,"
:End
:ClrHome
:Output(1,1,"
:Return
:Lbl BO
:For(A,0,20
:Output(7,8,"º
:End
:For(A,0,20
:Output(6,8,"º
:Output(7,8,"
:End
:For(A,0,20
:Output(5,8,"º
:Output(6,8,"
:End
:For(A,0,5
:Output(5,8,"
:Output(4,8,"
:Output(3,7,"*
:Output(5,9,"*
:Output(5,7,"*
:Output(3,9,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(2,6,"*
:Output(6,10,"*
:Output(6,6,"*
:Output(2,10,"*
:Output(1,8,"*
:Output(4,5,"*
:Output(4,11,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(3,5,"*
:Output(7,9,"*
:Output(7,7,"*
:Output(1,9,"*
:Output(2,7,"*
:Output(5,4,"*
:Output(5,12,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(4,7,"*
:Output(8,8,"*
:Output(8,6,"*
:Output(2,10,"*
:Output(3,8,"*
:Output(6,5,"*
:Output(6,11,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(5,8,"*
:Output(3,9,"*
:Output(4,9,"*
:Output(7,4,"*
:Output(7,6,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(6,9,"*
:Output(4,8,"*
:Output(5,10,"*
:Output(8,3,"*
:Output(8,9,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(7,8,"*
:Output(5,9,"*
:Output(6,9,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(8,9,"*
:Output(6,8,"*
:Output(7,10,"*
:End
:ClrHome
:For(A,0,5
:Output(8,V,"π
:Output(7,9,"*
:Output(8,11,"*
:End
:ClrHome
:For(A,0,9
:Output(8,V,"π
:Output(8,8,"*
:End
:For(A,0,10
:Output(8,8,"
:End
:Return
:Lbl X
:ClrHome
:Output(1,1,"
:
Generated by SourceCoder (http://sc.cemetech.net)
© 2005-2010 Cemetech (http://www.cemetech.net)
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 18, 2010, 12:06:12 am
You made this: http://www.ticalc.org/archives/files/fileinfo/412/41215.html (http://www.ticalc.org/archives/files/fileinfo/412/41215.html)

It makes me so sad. I was such a noob, all the different areas have their own copies of the RPG Starter Kit (Meaning their own map set, movement engine and event program). This could have easily been astronomically smaller. It also might have helped if I'd actually beaten FF4 before I tried to make a sequel.
Mhmm I have been actually meaning to try this back then. For some reasons, I never did, though. I might give it a try at one point anyway, though, just out of curiosity.
Title: Re: Silly things you did as a noob
Post by: quasi_Phthalo on July 18, 2010, 03:20:26 pm
I once wrote a game that had to make the whole screen black as a background everytime it started up, like this:
Code: [Select]
For(A,1,95)
For(B,1,63)
Pxl-On(B,A)
End
End
that took FOREVER
then i discovered you could just tinker with the window settings and use Line( 63 times. Much faster!

EDIT: (note that I also used to use closing parentheses
Title: Re: Silly things you did as a noob
Post by: shmibs on July 18, 2010, 03:24:17 pm
/\or you can just use the Horizontal command/\
Title: Re: Silly things you did as a noob
Post by: quasi_Phthalo on July 18, 2010, 03:29:20 pm
/\or you can just use the Horizontal command/\
dang, i'm still a noob!
Title: Re: Silly things you did as a noob
Post by: Snake X on July 18, 2010, 04:43:00 pm
I just used for loops for line coordinate variables, it will fill up in maybe a second at most.

when I was a noob, I didn't know what the Garbage collect was... yeah..... x.x
Title: Re: Silly things you did as a noob
Post by: Silver Shadow on July 18, 2010, 05:29:56 pm
Congratz for that Garbage Collect! :P
Title: Re: Silly things you did as a noob
Post by: Netham45 on July 18, 2010, 05:37:02 pm
I wrote a 17k program that inverted the screen.

Still on ticalc, if anyone wants to find it.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 18, 2010, 07:54:26 pm
The funny thing, though, is that it's the fastest TI-BASIC program that does that on ticalc :P

As for Garbage Collect, it used to scare me before. The first time it appeared, I thought if I said Yes it would clear my entire memory. x.x

They should have called it Reorganize Memory like when the Francais APP is installed...
Title: Re: Silly things you did as a noob
Post by: miotatsu on July 18, 2010, 08:03:39 pm
easiest full black screen in basic:
1. draw a full black screen
2. store it in a pic
3. recall the pic
4. ???
5. PROFIT!

:P
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 18, 2010, 08:26:31 pm
Then you wasted 767 bytes of RAM (and an entire pic) :P
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 18, 2010, 09:57:24 pm
I wrote a 17k program that inverted the screen.

Still on ticalc, if anyone wants to find it.

Can't find it :(

What's your ticalc name?

Found Kerm's version of Shade(, though :)
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 18, 2010, 09:59:32 pm
http://www.ticalc.org/archives/files/fileinfo/352/35264.html
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 18, 2010, 10:13:55 pm
And another silly thing about the 9001-byte platformer: The code for movement (left/right) is written 3 times identically one after another for no reason at all.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 18, 2010, 10:18:58 pm
lol x.x

I remember back then when experimenting I sometimes did that to try having multi keypresses, but it obviously didn,t work :(
Title: Re: Silly things you did as a noob
Post by: yunhua98 on July 18, 2010, 10:21:54 pm
well, I once tried to "Goto randInt(0,10"
and have labels from 0-10.
I was trying to save "If" Statements.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 18, 2010, 10:24:29 pm
I kinda wish that was possible, though, back then :P

Altough of course we can always fake labels and just use a loop and some huge if conditions inside :P
Title: Re: Silly things you did as a noob
Post by: thepenguin77 on July 18, 2010, 10:27:14 pm
Seeing all this made me go back and play my first legit program BWORM. It was a worm game where the worm was 2x2 squares that moved 3 pixels per frame. The goal was a three pixel wide line. (notice a problem?) Since this game was made long before I knew what lists were, I used all the variables to store the coordinates of the points. But x and y for every point took way to much memory. So I changed it to x.y where y was a decimal and x was the whole part.

So I started playing it, it was holding at a steady 2 fps, and once I got to about 15 points on screen, it started moving faster. Eventually it was jumping 8 pixels per frame. Not only was it nearly impossible to hit the 1x3 goal, but it was such a big jump that the worm could cross itself.

After I made it, I realized it was so bad that I didn't even try to go optimize it.
Title: Re: Silly things you did as a noob
Post by: Deep Toaster on July 18, 2010, 11:28:55 pm
When I first started programming, I did everything by trial-and-error, so when I first used Menu, I thought we *had* to use 1 for the first choice, 2 for the second, etc. The program ended up having several Lbl 1s :D
Title: Re: Silly things you did as a noob
Post by: Builderboy on July 19, 2010, 01:22:35 am
One of my very first Basic games was Breakout.  But dont get excited because it was no good :P The physics was set up so that the ball always bounced off the paddle the same angle, meaning that every single game was exactly the same.  I also was trying to get around getkey's quick key repeat with timers and lots of variables, but it just made it hard to use :P and lables lables lables means lots of memory leaks! Yayyy!.


Although probably the game with the most leaks was my very early Basic Shift game :P After the 3 built in Levels it got a memory error x.x
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 19, 2010, 03:30:48 pm
wow you had a pure BASIC shift game? I didn't knew lol
Title: Re: Silly things you did as a noob
Post by: thepenguin77 on July 19, 2010, 03:36:26 pm
I made Brian Teaches Typing when I remembered Mario Teaches Typing from elementary school. I didn't know about strings, so I stored 1-26 to A-Z. You typed without spaces and then the calculator multiplied the whole 70 variable number together and matched it with the correct answer. It even gave words per minute.
Title: Re: Silly things you did as a noob
Post by: MRide on July 19, 2010, 06:23:55 pm
1)My first game was a text RPG where every single line was either a menu or a Lbl.  Most of the menus only had two choices, and one always ended in death.
2)When I finally learned how to use the Disp command I would use spaces to format text.  I was scared of the multiple-argument Output( .
Title: Re: Silly things you did as a noob
Post by: thepenguin77 on July 19, 2010, 06:34:38 pm
1)My first game was a text RPG where every single line was either a menu or a Lbl.  Most of the menus only had two choices, and one always ended in death.
2)When I finally learned how to use the Disp command I would use spaces to format text.  I was scared of the multiple-argument Output( .

You were scared of Output( and yet you used Menu(? It wasn't until after I learned assembly that I tried to use Menu(. Catalog help just wasn't making any sense to me.
Title: Re: Silly things you did as a noob
Post by: MRide on July 19, 2010, 07:44:22 pm
Well, the programming tutorial in the handbook explained how to use Menu( , but not Output( .  I was also unaware of what any other commands besides Menu, Lbl, Goto, or Disp did.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 19, 2010, 08:35:41 pm
I had an hard time understanding menu(). When I got it, I was disappointed that it only allowed 7 choices >.>

Also, one thing I did as newbie for NPC convos in a RPG was using Pause "text" for long speeches. So to read the entire text you had to scroll left and right. That said, the idea may not have been that n00bish, though, and it actually looked cool and took very few space on the screen ;D. But still remains the fact it was a really cheap way to display huge text and avoiding coding an entire text routine ;D
Title: Re: Silly things you did as a noob
Post by: TC01 on July 19, 2010, 09:01:52 pm
Also, one thing I did as newbie for NPC convos in a RPG was using Pause "text" for long speeches. So to read the entire text you had to scroll left and right. That said, the idea may not have been that n00bish, though, and it actually looked cool and took very few space on the screen ;D. But still remains the fact it was a really cheap way to display huge text and avoiding coding an entire text routine ;D
Actually, I like that idea. As you say it takes up very little space, plus it means if you want to wait for the user to press enter before displaying the next line (like you might in an RPG), it's done automatically for you, no getKey routines involved. The only downside would be actually having to scroll left and right for really long text, of course.
Title: Re: Silly things you did as a noob
Post by: quasi_Phthalo on July 19, 2010, 10:07:33 pm
for the longest time, i didn't even know that you COULD display text using the Pause command. I just used Disp, then Pause with no argument
Title: Re: Silly things you did as a noob
Post by: nemo on July 19, 2010, 10:13:02 pm
same with me, quasi. and i was so confused whenever i tried to optimize using Ans.. and right after Pause statements i'd get syntax errors... then i read the TI|BD article on the pause command and found out Pause, ever so TI-like, updates Ans. why it's the only text outputting command that does i will never know.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 19, 2010, 10:30:57 pm
Yeah, I even considered re-using it later. I never understood why I never did. It may have been because I did not want the calc to go in pause mode, altough eventually I didn't mind. I was amazed when I found out about Pause "txt". My TI manual was not clear on that.
Title: Re: Silly things you did as a noob
Post by: yunhua98 on July 20, 2010, 02:55:55 pm
I always wondered why some tricks (Like Text(-1) are undocumented.  Does TI not know themselves?
Title: Re: Silly things you did as a noob
Post by: calcdude84se on July 20, 2010, 03:18:23 pm
The chance of that occurring accidentally is extremely low. More likely is that it was a test feature or something that never became official, just like native Asm on the 73 and 83.
Edit: True, the code had to be unsquished and specially formatted, but better than nothing.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 20, 2010, 03:25:10 pm
Yeah, to me it seems more like test features that were not implemented and they did not bother removing them, like debug rooms in video games. On the regular 83 without the Plus, there was no Asm( token, but you could run no-stub ASM programs using Send(9prgmNAME) (note, the 9 is not a typo).
Title: Re: Silly things you did as a noob
Post by: mapar007 on July 20, 2010, 03:34:12 pm
Errrmmm... I uploaded a quadratic solver to ticalc.org... :D I also did a 10000th version of ptools. With LESS features. :P

And as a response to thepenguin's posts on the first page: OS modification is easier than you think, but ld is not gonna work :)
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 20, 2010, 03:40:52 pm
/me demotes Mapar from staff

j/k XD

I never uploaded my math programs to ticalc.org, even when I wasn't that aware of their archives flooded with crap (not to mention back then they didn't even have 20000 files), because I thought they would be useless outside my province, due to different school systems. Plus they were in French, so they would have got a much smaller audience.
Title: Re: Silly things you did as a noob
Post by: thepenguin77 on July 20, 2010, 03:47:44 pm
And as a response to thepenguin's posts on the first page: OS modification is easier than you think, but ld is not gonna work :)

I know, lol.
Title: Re: Silly things you did as a noob
Post by: DJ Omnimaga on July 20, 2010, 04:46:51 pm
Lol nice XD

Btw since distributing such OSes is against the rules, but not entire OSes written yourself, remember that if you ever make a modified calc OS with enough modifications making it worth it for the rest of the community, or fixing errors TI did, you can simply use Lunar IPS on ROM hacking sites and create a patch of your OS. You take the original then the modified version. Later, people can use Lunar IPS or any other IPS patcher to apply it to the copy of OS 1.19/2.43/2.53 MP they download from TI website. The patch will only contain your own code, nothing from TI, thus, making it legal to distribute outside TI website.