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.

Messages - NecroBumpist

Pages: 1 [2] 3 4 ... 10
Other Calc-Related Projects and Ideas / Re: The Necrotorium
« on: October 17, 2011, 07:42:06 pm »
Thanks Chockosta.

I'm putting what little work I have done on nGfx aside for a little while so that I can work on reading through "Let's Build a Compiler" by Jack Crenshaw. I've always been interested in writing my own Lua -> Lua Assembly compiler. Mainly because there's a few syntactic changes I'd like to make (goto and inline keywords, var += var/constant, etc) I'd also like to try out peephole optimization as well.

It should be a good, fun learning experience. And as always, I will share the spoils of my effort with everyone.
I'll be keeping my progress on this compiler in the Necrotorium under /cLua.

Off to go read more Pascal code examples.

OmnomIRC Development / Re: OmniURL brokeneded
« on: October 16, 2011, 08:55:40 pm »
I can confirm that OmniURL is severely brokened.

sorry for noob question, but how exactly do I update my nspire (touchpad) os with these files?

You would install TI's Student Software (Normal, CAS) and then in one of the drop down menus there should be an option to "Send Operating System" or something like that.

If you're updating to 3.x be sure to use TNOC.

Humour and Jokes / Re: 9001 signs you're addicted to calcs and Omni
« on: October 15, 2011, 11:45:51 pm »
2250: You don't actually spend your time programming for calcs, but instead procrastinate constantly

Miscellaneous / Re: Let's hack some votes
« on: October 15, 2011, 08:02:34 pm »
>dumping massive amounts of iron into the ocean

besides, ANY species that has either extreme population growth/fall will cause significant harm to its ecosystem.
Humanity for example is a case in point.

Whatchoo know about a balanced ecosystem.

Other Calculators / Re: How much stuff is on YOUR calc?
« on: October 15, 2011, 12:43:47 pm »
Not many, as I cannot send files to my NSpire :|

Spoiler For Spoiler:
TILP, y u no have less DLL errors
TI, y u no free software that doesn't require the license I lost

Other Calc-Related Projects and Ideas / Re: The Necrotorium
« on: October 14, 2011, 07:30:32 pm »
I'm sorry that this has seemed kind of dead, I've had a busy few days with school projects and tests.

However, now I can continue!
Note: I'm going to start the Tokenizer/Lexer now. This will be pretty general, but once I start the next phase I will need to have most of the language finalized, so if you have a suggestion make it now please!

I am basing nGfx off some ideas I had for a language I tried to make for another platform, but I believe the same abstraction concepts should work on the NSpire. This predecessor was originally planned to be interpreted, but that will be simply be too costly on the NSpire, so instead I will be compiling this directly to Lua, and maybe at one point in the future, to Lua Assembly.

Anyway, now I will outline the language, all of this is open to suggestions. I will try to be very open, as I want to begin with the best language possible, not try to fit in new features mid-way through development!

Code: (Without comments) [Select]
Title = "MainWindow"
Size = scale(100, 100)
Position = offset(0, 0)

Name = "Example 1"
Size = scale(50, 50)
Position = scale(25, 25)
Color = rgb(64, 128, 192)

Name, Value = "Text", "Omnimaga!"
Position = type(center)
Font = font(15, bold)
Color = rgb(32, 64, 192)

Code: (With comments) [Select]
// A Comment that ignores the rest of the line
/* A multiple line, or variable lenght, comment */

// It should be noted that like in Python, tabs are an important part of the language.

[Window]: // Creates a new Window Object

One thing I think will be critical to games is having several different view modes
such as a title screen, a main menu, a game play area, and an in-game menu
There might even be more windows within that.

You can think of these as different contexts, and will come more into play
later as the language develops.

Title = "MainWindow" // Gives the Window a Name so it can be accessed later.
Size = scale(100, 100) // Make the Window cover the entire screen.
Position = offset(0, 0) // This will be default. Places window at top left corner.

[Rectangle]: // Creates a new Rectangle Object

This Rectangle is parented to the Window, which means that its position
is relative to its parent.

Name = "Example 1"
Size = scale(50, 50) // 50% of the max X and Y values.
Position = scale(25, 25) // Centers the object in the middle of the screen.
Color = rgb(64, 128, 192) // Gives our box a nice blue color.

// Now, let's put the words "Omnimaga!" In the center of this Rectangle

Name, Value = "Text", "Omnimaga!" // Oh, see what I did there ?
Position = type(center) // I plan to add abstractions like this to make it
// easy to center stuff. I want to add vertical,
// horizontal, and a combination, for centering.
Font = font(15, bold) // Gives our text nicely sized.
Color = rgb(32, 64, 192) // A darker shade of blue.

// A scripting language for manipulating objects and stuff
// Will likely create my own language in the future
// For now, will have a simple Lua API

Lua / Re: Platform-specific Problem
« on: October 13, 2011, 10:54:26 pm »
Well then, your problem is that the leve1 table simply doesn't have what you're looking for in it.
So display the answer of the expression you're using (y * levelsize+x+1) and see if that looks wrong.
That value is simply not in the table, because the compare value is nil.

News / Re: Randy Compton releases the first TI-80 emulator
« on: October 13, 2011, 09:42:00 pm »
Wow! That's quite a feat.
I'm very interested to learn how he reverse engineered an instruction set for an undocumented, proprietary processor.

Cheers! To the emulation of Texas Instrument products!

Spoiler For Spoiler:
Omnimaga is blocked at my school as well, under accusations of being a "gaming" website.

Lua / Re: Platform-specific Problem
« on: October 13, 2011, 09:37:36 pm »
Functions based inside gc (ie gc:drawRect(), gc:drawString(), etc) only work if they are called indirectly from within on.paint().
And as said earlier, you have to refresh the screen yourself, so either set a timer, or do it manually.

Code: [Select]
local ggc; -- global graphics context

function on.paint(gc)
gcc = gc;

function on.enterKey()
gcc:drawString("Herp", 0, 0, "top");

That will not work. This will.

Code: [Select]
local extra;

function on.paint(gc)
-- do normal painting

if extra then
extra = nil;

function on.enterKey()
extra = function(gc) gc:drawString("Herp", 0, 0, "top"); end


You're problem for 2 is most likely either you're passing the wrong arguments, or your accessing part of the table that doesn't exist (out of bounds), causing it to return a nil value, which is later compared to something else, like a number. Lua doesn't allow this.

Either read through the calling function, or add some conditional code to make sure the inputs are safe.

The error's line number would be appreciated as well.

Miscellaneous / Re: How much English words do you know?
« on: October 12, 2011, 12:51:20 am »
18,900 - Native
According to some graphs on their blog, I'm about 1,000 words behind where I should be for 14 years old.
Though this site does admit that the graphs are significantly higher than the average population (SAT scores are significantly higher on average).

I should read more.

Graviter / Re: Graviter
« on: October 12, 2011, 12:17:30 am »
Buttons were never meant just for opening doors ^^

That effect after entering the portal.

Other Calc-Related Projects and Ideas / The Necrotorium
« on: October 11, 2011, 11:58:21 pm »
This my 100th post here on Omnimaga, so I might as well make it significant. Not much to show for it except goals, but I want to be able to post again already.

The Necrotorium will be a repository of all of my calculator related projects, jumbled up into one thread.
Because I like the version control integration my IDE has with Github, I will distribute all of my files from there, instead of attaching them to new posts like the Axe Parser project. However, I will make a new posts for worthy updates listing important information to keep everyone informed.

So, what will the Necrotorium include ?
Well I'll quote the README from the Github located here

Quote from: Github README
Projects In The Works:
- nGfx (NSpire Graphics)
    I hope to create a whole new level of abstraction for creating games on the TI-Nspire.
    This will be facilitated by designing a simple language that compiles to Lua, hopefully
    taking away all of the complexities of getting a good UI in order.
- Lua IDE
    I'm working on a simple IDE that will allow you to code in Lua on calc, easily run it,
    save / load code, and remap the keypad to allow easy access to some symbols.
    I might attempt syntax highlighting in the future, though I am without a CX, so this is
    not an immediate priority.
- Bitmap2Img
    A script that when completed, will convert uncompressed bitmap images to the
    ti.image format.

These are the main projects I've taken interest to recently.
Particularly nGfx. I have the sudden urge to take another stab at writing a compiler, so I'd like to try that here.

Now that I've gotten this out of the way, I will begin writing portions of nGfx, and will soon have code examples (which will be open to drastic changes).

I would love to see collaboration in the future when I've outlined a much more solid direction for these projects to head towards.

Spoiler For Title:
The title is derived from my name "NecroBumpist" and the word "Repositorium"

Miscellaneous / Re: The Leader Who Created Apple...
« on: October 11, 2011, 06:09:25 pm »
I saw this, and thought of you, Omnimaga.
Steve Jobs's Death In a Newspaper Article - Imgur

Spoiler For Spoiler:
100th post, here I come!

Miscellaneous / Re: What is your avatar?
« on: October 11, 2011, 12:04:16 am »
Lol, take a guess at mine.

Pages: 1 [2] 3 4 ... 10