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 - Quigibo
Pages: 1 ... 77 78 [79] 80 81 ... 135
1171
« on: June 29, 2010, 01:12:08 am »
I don't think it would need to be a virus (which is incredibly difficult to write). I'm sure a lot of people in this community as well as Cemetech, UTI and other forums would be willing to donate some of their cycles for it and a news article on ticalc would draw a lot more participants. The bigger question is is there anyone who actually cares enough to write the software required to do this? That would take a lot of time, unless one already exists, in which case we'd just need to borrow someone's server.
1172
« on: June 29, 2010, 12:57:17 am »
Unfortunately, I just realized that there is going to have to be one additional restriction. Each Axiom will have a maximum number of subroutines (but still unlimited replacements). The number right now is 32. I can increase this number in the future if I reduce the number of total Axioms allowed per program but I think this limit is acceptable as it is. To give some perspective, the entire parser currently has 29 built-in subroutines which includes all the typical functions as well as all the operations such as multiplication and division.
1173
« on: June 28, 2010, 09:15:10 pm »
Funny you mention that. I was playing around with that as an idea for my example program, but I realized I need my note constants becasue its too tedious to type in the note values manually. There is something you have to realize however; The interrupts trigger more rapidly then you might think. According to WikiTI, at their slowest speed, the interrupts trigger around 100 times a second and at the fastest speed its closer to 1000 times a second! Your typical 16th note is 8 beats per second so you can see the problem that arises.
What you have to do is have the interrupt use a decreasing counter which only plays a note when the counter reaches 0. Then, you have to reset the timer to a next wait time, which should be part of your note data. This strategy works very well, I was able to get BGM into my games with no appreciable slow down at all. So to answer your question, yes, it is very possible, I've done it.
1174
« on: June 28, 2010, 11:16:57 am »
LOL! That would be awesome if you could have the companion cube
1175
« on: June 28, 2010, 11:15:08 am »
I don't know, I liked the word "Axioms" becasue that is a word used to describe the fundamental building blocks of mathematics, and in the same way, the Axioms in Axe are also like the building blocks of Axe programming (if you include the majority of the existing routines which are templated in a very similar way as the Axioms) not to mention it sounds like Axe which probably contributed more to me picking that name
1176
« on: June 28, 2010, 02:18:12 am »
If you subtract all the extra app header stuff, it leaves 16189 Bytes of executable code available with unlimited data storage (once I get reading from archive working). A typical large game has anywhere from 20%-80% data which includes sprites, maps, text, music tracks, and things like that. So really it should be possible to have multi-paged apps eventually if I can get all that stuff done before the contest deadline. Reading from other app pages is relatively simple since its just a form of reading from archive. Executing data on those pages however is much more difficult, but not impossible.
1177
« on: June 28, 2010, 02:03:02 am »
You can do that with the interrupt feature coming soon. You just have to be aware that some commands disable interrupts for their duration which could throw off the measurements. Specifically, any command which draws directly to the LCD most likely has them disabled. Although if you were running tests with Bitmap(), you would have both of them draw to the buffer to make it even anyway.
1178
« on: June 27, 2010, 07:51:18 pm »
I'm almost certain that they're ignored, but I haven't actually tried that yet.
1179
« on: June 27, 2010, 04:37:36 pm »
Yes, turning it into an appvar is as simple as changing the program type byte from $05 to $15 and renaming the file with the extension .8xv instead of .8xp
EDIT: I'd also like to make a correction to one part of the SDK, I think I uploaded the wrong version. I am going to upload the correct version. The initial routine section should read:
;On the other hand, if this is a subroutine with 1 or 0 arguments then this ;part of the Axiom must be ignored since there is no popping needed.
1180
« on: June 27, 2010, 04:45:55 am »
In addition, your idea doesn't make any sense. How could you use an inline command to store data? The regular methods for Axe data storage involves moving data to the end of the program and gives you a pointer but the assembly is inserted directly at the place you put it. Its like saying you would rather use Asm(Data) to store your data instead of [Data] since both store hex values into the program. The difference is that the first one executes the data and the later is just storage. Although technically its possible to store data in Axioms, its much less efficient and requires difficult assembly to make it usable as data. Such assembly would be against the rules anyway.
1181
« on: June 27, 2010, 04:12:40 am »
No, this can't be used in the contest because this is assembly code which is against the rules. These are not the Axe libraries, these are the assembly libraries.
1182
« on: June 27, 2010, 03:01:01 am »
This is for all assembly programmers who want to develop Axioms for Axe, you can post your questions, related bugs, and other concerns here. Although I have not actually finished the Axiom feature, I have finished a template for the format I am most likely to use. It is possible that there could be some very minor changes, but you will easily be able to compensate for those. I just want to release this now so people can start writing their routines in preparation for this feature.
I included the SDK as well as an example Axiom that shows how some of the current functions could be written as Axioms. Unfortunately, I realized that it will not be possible to redefine the token names as I was planning since the hook would take too long to search through the program to figure out which Axioms are used in that source and then search through those appvars every time a token is displayed in the editor. The slowdowns would be too great especially for larger libraries.
Anyway, happy programming!
1183
« on: June 26, 2010, 06:16:14 pm »
Also, you're going to have to pad to the nearest byte. Which means that your sprite will look something like this:
0909 Row1: xxxxxxxx x0000000 Row2: xxxxxxxx x0000000 ... Row9: xxxxxxxx x0000000 So in total, the sprite will be 20 bytes. 2 for the size parameters and 18 for the sprite itself.
1184
« on: June 26, 2010, 04:23:16 pm »
@ztrumpet, I hope so. I plan to eventually have external Axe libraries which is basically almost exactly what you're talking about, however, it is very difficult. Much more so than Axioms. I have reset the poll since I finished interrupts which are really awesome are surprisingly simple to use in Axe. You're all going to be so spoiled [old man voice] becasue back in my day, we had to are our interrupts in assembly, and the tutorials were wrong and misleading, and I spent weeks before I realized I forgot to save the IX register, and get off my lawn you crazy kids! [/old man voice] . I have replaced it with geometry drawing so please vote once again!
1185
« on: June 26, 2010, 03:13:14 pm »
That would be clever! However, I am probably going to be using more lowercase characters to prefix more constant types like key codes, bcalls, tokens, useful ram pointers, etc. But I could do the same thing. Like maybe pA gets compiled as "Pointer to A" so you can do {pA} to get it.
Pages: 1 ... 77 78 [79] 80 81 ... 135
|