Show Posts

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


Topics - Xeda112358

Pages: 1 ... 6 7 [8] 9 10 ... 13
106
TI Z80 / Snake (Zeda)
« on: March 23, 2012, 10:23:57 am »
Since aeTIos has released his snake game, I think I should release mine >:D (slightly modified)

What you do is use the arrows to change the direction of the snake. You can eat the 2x2 blocks to grow 1 unit and you can watch it digest O.O Bumping into yourself or a wall will kill you (so don't do it!) and after every 20 units you grow, (you start with 4), a counter will count down as your snake shrinks. Once it hits zero, the game will speed up a little. There are 6 speed sa=tages, after that, it cannot get faster. Every time you eat a fruit, another spawns randomly on the map. Did I mention the map was made of 4x4 tiles and is 64x96 tiles? It scrolls so that you can see it all, don't worry :P Oh, also, there are about a bazillion fruits on the map at all times, so you won't have to hunt far for another fruit. There is a score system (but not a highscore saving system).

Finally, the program is 3128 bytes :) Enjoy!

107
Grammer / Grammer Font Request
« on: March 21, 2012, 05:23:04 pm »
Hi folks, I have a problem... Currently, the variable sized Grammer font is incomplete (very much so) and I don't have the time or drive to finish it, so I am asking if folks could help me out.

What is needed:
-A font that is generally the same height for all characters (preferably >6 pixels tall) and with varying width.
-It should look good (not sure what I mean by that) and should have some variation in width (like a ! might be thinner than a W)
-It should map to the same chars as the TI-OS in the large font
-Any extra chars that are empty you can fill in with your own (I made little sprites for the 4x6 font)

To help you, I have made the attached on-calc tool (it has one slight update from the previous version of it).
Controls:

+ and - scroll through chars
arrows move the pen tool
6 makes the char wider
4 makes it thinner
2 makes it taller
8 makes it shorter
[Enter] will set a pixel
[Del] will delete a pixel
[2nd] will invert it
[Mode] will exit

Everything saves automatically when you press MODE or you cycle to another char!
When you have a font you like, upload the appvar here (and possibly a screenie) so we can check it out.

Thanks much!

108
OmnomIRC Development / PM Updates
« on: March 20, 2012, 10:24:40 pm »
After talking to DJ_O, I thought of a great useful feature, but for some reason I don't think it is possible. Would it be possible to have OmnomIRC message the user (with highlight) when they receive a new PM?

109
Other Calculators / TI-OS Linking Bug?
« on: March 16, 2012, 07:30:10 pm »
I am working on my TIConcours entry (the SNAKE program) so I backed it up earlier. I sent it to the computer and that worked fine, so my entry now has a backup on the computer. However, I tried sending it to Wabbit so that I could look at it and at my calc while programming similar sections of code. That failed. So I tried sending another file. That worked! So then I tried resending the other program and again, it failed. So, I renamed it on my actual calc, resent it to my computer, and it sent it to Wabbit just fine.

Later, I decided to back it up from my TI-84+ (OS2.40) to my TI-84+SE (OS2.43). I got a Version error. So I tried sending another program. That worked just fine. I tried to send my snake program again and it failed.

So, what I am thinking is that the OS bugs out on the name. Unfortunately, I cannot give the last two bytes of my program name (it is an ID for the contest). However:

The name starts with Theta followed by SNAKE and then the ID number. This is a total of 8 bytes. Does anybody know what is wrong?

110
TI Z80 / Maze Chase
« on: March 09, 2012, 09:53:10 am »
Update 9 March 2012: http://ourl.ca/15476/290273

This game is a classic maze game with a twist-- an enemy seeking you out through the maze. Currently, there is no code to handle being caught, but it still is a bit freaky when all of a sudden you see the enemy pop out of nowhere, easily navigating the maze to find you.

You can make a maze by drawing on Pic1 or using the built in editor. Step mode means you take one step at a time and so does the enemy. Personally, I find this excruciating. Action mode is much more fun :D Even if you aren't moving, the enemy still seeks you out. Mazes are 64x96, but only a portion is shown on the screen. If you are daring enough, you can open up the program and resize the tiles accordingly :D (smallest should be 3x3 and largest is 15x15). Anywho, feel free to ask questions and stuff! I still need to add more to it, but you can see how this could easily turn into an Advanced Wars level editor >.>

EDIT: Also, the enemy starts in the lower right corner, so if you have no path linking to that, you won't be chased. Also, press Clear to exit.
EDIT2: Er, I forgot to mention the editor controls:
[Enter] will draw a tile
[Del] will remove the tile
[2nd] will toggle the tile

111
Grammer / Gravity Jump
« on: February 29, 2012, 09:52:38 pm »
I am posting this because I figure it might be useful for anybody who wants to design a platformer in Grammer code. It also might serve as a decent example for pseudocode for others writing a similar engine *cough*

It features collision detection, grayscale, and gravity. For this example, use Enter to jump and left/right to move. Press clear to exit :) It draws a border, but otherwise leaves the screen untouched for your own obstacles.
Code: [Select]
:.0:
:13→G'
:π9872→W
:Disp oW
:0→B→A
:64→X→Y
:Line(0,0,64,96,3
:Repeat getKey(15
:Y/64→F
:X/64→E
:Line(E,F,5,5,6
:Line(E+1,F+1,3,3,1,W
:DispGraph
:Line(E,F,5,5,4
:Line(E+1,F+1,3,3,0,W
:pxl-Test('E,F+5,1,5,0→C
:If *B=abs(B
:0→A→B
:Y→Z
:If !C:+B≠abs(B
:B+G'→B+Y→Z
:If B
:Then
:If B≠abs(B:*pxl-Test('E,F-1,1,5,0
:0→B
:If B=abs(B
:Then
:Z/64→D
:While D≠F
:F+1→F
:If pxl-Test('E,F+5,1,5,0
:F→D*64→Z
:End
:End
:Z→Y
:End
:If C*getKey(9
:‾63→B
:getKey(3
:-getKey(2→H*64
:→I+X
:/64
:E+2+H*3→H
:For(G,F,F+4
:If pxl-Test(G,H
:0→I
:End
:X+I→X
:End
:Stop

112
Grammer / GrayTile Editor
« on: February 29, 2012, 10:30:49 am »
For those wanting a grayscale tile editor for their grayscale tilemaps, this is what I made for Samocal. It creates the appvar TILES of the right size for 32 gray tiles. The first 4 bytes contain info, so if you want to use this for a tilemap, you will need an offset of 4 bytes into the var. For example:
4+Get("UTILES→T

T will now point to the tile data :) The sprites are 8x8 and the controls are:
  • Arrows move the little cursor
  • [Mode] exits
  • [Clear] clears the data
  • + and - cycle through the sprites
  • [2nd] draws a gray pixel
  • [Enter] draws a black pixel
  • [Del] draws a white pixel


Also displayed are the masks (graymask and black mask). If you want to, you can definitely use this to make masked sprite data as well. Anywhere that is gray will show the background, white appears as white, black appears as black.

113
Grammer / Latest Grammer Updates
« on: February 26, 2012, 11:40:07 am »
EDIT: Go to the last post for the newest full release. This will include at least a tutorial, command documentation and the latest version of Grammer.

This topic is solely for Grammer releases. These can be discussed in this topic. This first version to appear here has the following features:
Code: [Select]

getKey               String support          sprite support
Tilemapping          Line drawing            rectangles (11 styles)
circle drawing       pixel plotting          multiple buffers
Grayscale            Particle effects        Fire Effects
53 vars +1 sysvar    [ON] break              Custom fonts
Custom Error handler variable creation       var editing
RAM editing          Labels                  sub routines
External labels      external routines       TI-OS var access
If conditionals      While, Repeat, For      Goto
Hexadecimal input    binary input            relative line jumping

16-bit math including:
      addition         (carry=1-bit overflow)
      subtraction      (carry=1-bit overflow)
      division         (carry=16-bit remainder)
      multiplication   (carry=16-bit overflow)
      square           (carry=16-bit overflow)
      square root      (carry=remainder)
      square root (rounded)
      negative
      min(
      max(
      abs(
      sin(
      cos(
      rand
      gcd(
      lcm(
       nCr
       and
       or
       xor
      not(
      signed division
      randInt(
Logic including:
      Less than
      Less than or equal
      equal
      not equal
      greater than
      greater than or equal
Text output for:
     16-bit numbers in arbitrary bases
     32-bit numbers in arbitrary bases
     strings
     Typewriter mode
     inverted text
     custom font style
     line wrapping
There are tons of other features, too, but I cannot remember them all.

114
TI Z80 / Block Eater 2
« on: February 25, 2012, 03:22:39 pm »
The Block Eater series is one I started 5 years ago and I have applied it to many calc lanuages, including BASIC, xLIB, Celtic 3, Omnicalc, BatLib, ReCode, and Grammer. Once again, I am making it in Grammer, but this time I want to add more features and game modes.
Anyway, I have been talking about this on IRC, so I will release this outline in case I don't have the drive to finish this. It features grayscale, sound, score and timekeeping, and this is during gameplay, maintaining its speed at 6MHz. I tried to make sure Wabbit capture it as close to possible as it looks on an actual calc :)

What I want to add/change:
Traditionally, the game is played based on a time limit and you have to eat a set number of blocks in that time with obstacles making some blocks difficult to reach. This time, I want to set a time limit and you have to get a certain amount of blocks, but you keep playing until time runs out. The more blocks you get, the higher your score. You will need a certain score to move on to harder modes and there will be modes with enemies moving at random and modes where they chase you intelligently. I want to add a highscore system to make things more interesting :)

Another note, you will want the latest version of Grammer.

115
Grammer / Debugging Grammer Programs
« on: February 25, 2012, 09:30:15 am »
I have in the past made some large Grammer programs that need to be debugged and a few others have needed to, as well. Because of this, a few months ago I added the solve(3 and solve(4 commands and I made Grammer able to output to OS vars. With these tools, you can make a powerful error catcher and handler.

I, like many, started programming in BASIC and one thing I liked to do when debugging was press ON and do Rcl <<offending var>>. So if I knew the issue was with the value in C, I would do Rcl C. But, Grammer uses its own variables, not OS vars, so you cannot do this! Instead, you can make Grammer copy the var to an OS var before exiting on an error! Here you go:
Code: [Select]
.0:Return
solve(3,Lbl "ERRHANDLE ;initiates the error handler
<<program code>>
Stop
.ERRHANDLE    ;label name is ERRHANDLE
→θ'           ;Ans will be initiated with the error code
C→iC          ;Stores C to the OS var C
solve(4,θ'    ;Lets Grammer continue with the regular error
End           ;Not really needed, since solve(4 will exit the parser
If you do not use solve(4, the program will not break. So if your error handler just has an End, the program will not break on its various errors (like on press). I made an example a while ago that brought up its own menu when ON was pressed or there was a memory error. It would give the user an option to exit, goto, or continue. That is an option you don't get in BASIC.

116
ASM / Faster LCD update?
« on: February 21, 2012, 08:35:47 pm »
I had this idea that I plan to apply to Grammer once I totally free up saveSScreen of other uses. During the wait loops of updating the LCD, I can compare the current byte wanting to be updated with the corresponding one in saveSScreen (or some other buffer). If they are the same, don't update and go to the next byte. If they are different, copy the new byte to the saveSScreen location and update that spot on the LCD. At the worst, it will use the same amount of time to update the screen. I know this isn't the best for situations where consistent timing is important, but where you want purely speed (like 3D rendering and whatnot), this could be very useful. I figured this might save a few frames per second for folks :)

I'll try to write up some code when I have time .___.

EDIT: Also, what are some other ways that I can use to update the LCD as fast as possible (that will work in all cases).

117
Computer Usage and Setup Help / Computer Selection Advice
« on: February 18, 2012, 06:00:14 pm »
Okay folks, my trusty laptop of about two to three years has finally started to give out on me. I bought it new with a 1.6GHz processor, 3GB DDR2 RAM and 160GB hard drive space. That is still about all I need, but it has had quite a few problem in its short life:

After about a month, the screen started acting up and I finally took it apart (with no prior knowledge) and I found a component was over heating very easily. I broke the screen casing when I opened it (because I felt the warm spot and opened there), but since then, the screen has not acted up and has worked fine. About 9 months ago, either our dog or my little brother tripped on the charger cord and yanked it hard enough to break it, so the charger has been patched up and still doesn't work as well as it could (we used a charger tip from a 15 year old laptop that is very slightly too small). About 3 months ago, my battery finally gave out and no longer holds a charge longer than 10 to 15 minutes. Coupled with a faulty charger, I have learned to save my progress often. About two weeks ago, I started to notice that when saving to my hard drive, I would occasionally get a message saying that I could not save there (though I still have about 49 GB left). I am suspecting that my hard drive is having issues, now.

Here is what I want to do. I do not have very much money on hand, but I feel like I will need a new laptop. I want to try to take 2GB of the RAM I have on this laptop and put it in the new computer (laptop, most likely), so I am fine with a computer that doesn't have much RAM. A 160GB hard drive is more than enough for me as I mostly use my computer for programming and development as well as math and homework. Since 1.6GHz is pretty much outdated, I suspect that 2.6GHz is going to be what I should expect. The computer can be small or clunky, it does not matter. I figure that if it is small, it will last longer on a charge. I need to be able to access the internet for school and I will need to view .doc files and PDFs. I don't use my computer for games or most of the other garbage that comes with new computers preinstalled, so I don't need a bunch of features.

Does anybody have any tips, ideas, or help? I am currently searching for a computer with the following stats:
32- or 64-bit processor
I am okay with 1.6 GHz or better
120 GB hard drive or more
1 or 2GB RAM (if I am able to take 2 or 3 from this to put it elsewhere)

I still don't know how I will copy my hard drive data or remove the RAM and install it to the new computer.

Thanks much!

118
TI Z80 / ReName
« on: February 17, 2012, 08:13:23 am »
Have you ever needed to rename a program and you didn't want to download or you don't have a whole App to do it? Well here you go :) To rename it, put the new name in Str1 and the current name in Ans and then run Asm(prgmRENAME. So as an example, to change prgmMEANDHIM to prgmHEANDI (you know, for proper grammar :P ), you can do this:
Code: [Select]
"HEANDI→Str1
"MEANDHIM
Asm(prgmRENAME

EDIT: Opcode included

119
[FR] Autre Sujets de Programmation TI, Casio et Aide / Un Tuto Pour Grammer
« on: February 15, 2012, 11:53:12 am »
J'espere qu'il y aurait un tuto pour Grammer en français, donc j'ai decidé commencer ce projet, mais je ne parle pas français (bien).
Grammer
(un tuto en français)
   Bonjour, je m'appelle Zeda et j'ai fais le langage de programmation "Grammer." Premièrement, je ne parle pas français, donc la documentation peut-être mauvais (et, aussi, la grammaire). Le Grammer est une langage pour le TI-83+/84+/SE. Il y a un version qui est une programme ici, mais l'application a plus des fonctions, vitesse, et les autres fonctionnalités.

Qu'est-ce que Grammer? Grammer est une langage interprété.
Comment est-ce-que vous faites une programme? Utilisez l'editeur du TI-BASIC, mais le première ligne a besoin de le code:
Code: [Select]
.0:
Aussi, j'ajoute le token Return:
Code: [Select]
.0:Return
Comment est-ce que vous arrêter une programme? Le token Stop est le token que l'arrête.
Faites une Programme
   Je voudrais commencer le tuto avec une exemple. Vous pouvez "parler" avec le programme avec les fonctions et les tokens, mais la programme peut vous "parler", aussi. Donc, il y a des fonctions pour la calcul, entée, et sortie. Par exemple:
Code: [Select]
:.0:Return
:.LOOP            ;un label
:getKey→A         ;le pression sur la touche enregistrées dans le var A
:If A=0           ;Vérifie si A est zéro
:Goto Lbl "LOOP   ;va au le label "LOOP" s'il n'y a pas un pression de touche
:ClrDraw          ;efface l'écran
:Text('0,0,A      ;écrit le nombre en le var A dans l'écran
:DispGraph        ;affiche l'écran
:Stop             ;Arréte la programme

120
TI Z80 / GraMusic (Grammer)
« on: February 06, 2012, 05:14:55 pm »
So I made this music player in Grammer >.> The download includes two quick samples. I'll be back in a few hours if anybody has questions :)

Pages: 1 ... 6 7 [8] 9 10 ... 13