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 - AngelFish

Pages: 1 ... 3 4 [5] 6 7 8
61
Casio Calculators / Prizm languages
« on: March 26, 2011, 07:58:22 pm »
First of all, in advance, I apologize if I come across as anti-C or pro-ASM. That's not my position at all. I simply want future developers to be able to download a package and use it without a significant learning curve or frustration, which ASM doesn't have. The currently available C setup also lacks this. Such difficulties are at the root of Prizm development, since the community will lack significant progress until an easy to use or well known language becomes available. One such language is C, but as mentioned, it's difficult to set up. So, the crux of the problem is that there's no single easy to use tool to develop programs with. Unfortunately, this is not an easy problem to solve.

62
Humour and Jokes / Names and Programming ability?
« on: March 25, 2011, 03:16:49 pm »
It has recently come to light that a significant number of the community's most accomplished z80 Assembly programmers, including thepenguin77(Brian Coventry), FloppusMaximus (Benjamin Moody), calc84maniac (Brendan Fletcher), Ben Ryves, and Brandon Wilson all have first names beginning with the letter "B." This statistically significant event is obviously full of mystical meaning, so what is your hypothesis as to why this is?

* Qwerty.55 thinks that it's the result of the Calculator Gods favoring masters who have the letter "B" as the first letter of their name :P

63
Casio Calculators / Prizm File formats
« on: March 25, 2011, 01:08:56 am »
While the .g3a format is useful for add-ins, it's bulky and filled with unused space. Furthermore, it greatly increases the amount of memory used for small programs. In light of this, several people, myself included, have come up with new file format proposals to use in an upcoming shell.

z80man's proposal:

Code: [Select]
.org $30002000
data.l $xxxxxxxx   ;header for shell   
data.l $00000002   ;size of executable
data.b $01         ;true if MMU is to be reset
data.b $03         ;speed setting, 0-3
data.b $00         ;true if interrupts are to be disabled
data.b $01         ;true if fpu interpreter is to be enabled
data.b $01         ;true if all general purpose registers are to be cleared before execution
data.b $01         ;true if VRAM and screen are to be cleared
data.b $00         ;true if executable space is to be cleared
data.b $00         ;true if to begin execution in priveleged mode
;next 176 bytes are to be used for future expansion
data.l $00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000,$00000000
;next 64 bytes are for program description. Null terminated
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
;256 color 64 * 64 icon
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
;executable begins at $30004100
RST
NOP

Josjuice's proposal:
http://wiki.prizmwiki.co.cc/wiki/User:JosJuice/File_stuff

My proposal: Probably the most complex, but also probably the most flexible, since addresses aren't explicitly defined and even changes in the format itself can be accommodated. A sample program demonstrating the format with a 32x32 16 bit color icon is attached below. The header itself takes up marginally more than 2 KB.

Code: [Select]
Alternative: Uses a chunk based format (hereafter referred to as packets) in order to maintain compatibility with a wide range of data types
File header format:

Types of errors:
Type 1: Low severity parsing error. The user does not need to be informed and the parser can continue with little to no error handling.
Type 2: Moderate severity parsing error. The user may be informed if the program deems necessary and some error handling should generally be administered.
Type 3: High severity parsing error. The user should be informed and all parsing should be stopped to handle the error immediately.

Packets are identified by a 32 bit header in order to permit efficient register loading during parsing

Packet Bytes 1 & 2: ID bytes.
If the ID word is not recognized, then parsers must skip the packet.
The only time parsers are not allowed to skip packets is if the packets are on a special list (listed below). All programs must contain a copy of this list.
If the ID is found on the secondary list, the parser must return a type 3 error, since further parsing is either useless or impossible.
File Type
FileName
Main()

Packet Bytes 2 & 3: Size bytes.
The size bytes detail the size of the data without the header and are equal to the data size in bytes.
This means that if the packet needs to be skipped, then the address of the next packet is equal to the address of the first byte of data plus the size word.
If the size word is 0x00 00, then the size isn't applicable to the packet type.
If it is 0xFF FF, then the data size is unknown and a type 1 error should be returned.
All other words are valid sizes.
Within the file parsing program itself, each entry in the array of understood packets should include within it the earliest format version that the entry is compatible with.
If a version compatibility packet is present and the packet requires an earlier version than is available for certain packets, they should be skipped.
However, if the packet is a critical packet, then a type 3 error must be generated.

Types of packets:
Parent program: ID word is 0x00 00
Contains a 12 byte hex string designating the parent program. This may be a shell, a compiler, or any other program.
File type: 0x00 01
Details general information about the type of file, such as image data or executable program.
Two byte packet.
0x00 01: Executable SH3 Machine code (Prizm equivalent of .exe)
0x00 02: Routine library
FileName: ID word is 0x00 02
Contains an 8 byte ASCII file name of the form **** ****.*** where * can be any printable ASCII character.
The characters following the period are the file extension.
Program name should be padded with 0xFF bytes if not long enough. 12 bytes.
Version compatibility: ID word is 0x00 03
Four byte packet that details the earliest format version that should be applied to each packet.
If this packet is not present, a type 2 error should be generated.
The format for this packet is SB VV SS SV, where SB is the byte 0x55, VV is the version number in hex, SS secondary version number, and SV is the sub-version number.
For example, if the format was of version 01.04.10, then the data in the packet would be 55 01 04 10
Header packet: ID word is 0x00 10
Details additional file specific information, such as the author's name, file comments, references to other files,...
General purpose packet. Can include other packets within itself. Size is thus not applicable. Look for the header end packet.
Language: 0x00 11
Contains a three byte ASCII string detailing the language.
E.G. ENG for English, GER for German, etc...
Checksum: 0x00 12
Contains a 4 byte checksum of the data contained by the Main() packet. The checksum is a standard 32 bit checksum taken Mod 2^32
TimeStamp packet: 0x00 13
Fourteen byte packet consisting of YYYY MM DD HH MM SS, using the 24 hour clock with zero indexed values on the hour, minute, and second.
HeaderEnd: 0x01 00
Marks the end of a Header packet.
Size not applicable.
Icon Packet: 0x01 01
First byte is the number of colors used in the icon image. 0x02 is monochrome, 0x08 is 8 color, 0x10 is 16, etc.
If the first byte is 00 or another unsupported byte, a type 1 error should be thrown and the packet skipped.
If the program requires an icon and the first byte is invalid, the program may contine trying to parse the icon or it may substitute a default icon.
The second and third bytes of the packet are the width and height respectively of the icon.
Fourth byte is unused except for data alignment.
Note that the packet itself can only support icons up to 180 pixels on each side, so all sizes greater than this are automatically invalid.
It is recommended that only certain icon sizes be supported by the program.
If an invalid size is encountered, it may handle the errors in a similar fashion to an invalid color byte in the packet.
File size: 0x01 02
This four byte packet details the size of the data in Main() in bytes. It is not necessary for the format (although the program may require it).
Clock speed packet: 0x01 03
Contains a 6 byte field. The first byte states the CPU clock speed in hex, the second byte details the Peripheral clock frequency, and the third byte details the Bus clock.
The fourth and fifth bytes contain the values to be written to the FRQCR. If overwriting the register isn't desired, the value 0x2000 should be present in these bytes.
The sixth byte is contains the byte to be applied to UCLKCR. If the register is not to be overwritten, the value 0x20 should be used.
Remember that to overwrite UCLKCR, the data must be written with 0xA5 in the high byte of the write word.
MMUCR: 0x01 04
A four byte packet. If present, the data in the packet should be written to the MMU.
This packet need not be supported if the application is to execute outside the P1 and P2 memory areas.
File load: 0x01 05
Contains a series of ASCII filenames, each 8 bytes long, of the format   ^**** ****.***/
The ending "/" character is used to designate the end of each filename and the "*" character designates any printable ASCII character.
The character at the beginning of the string will be "^" if the file is to be loaded into memory and "#" if it is simply to be checked for its presence on the device.
If one or more of the files are not present, then the program should inform the user.
Main(): 0xFF FF
The packet containing all user data (such as code) within the file.
Size is not applicable.

File structure:
Bytes 0-4: ASCII representation of the file extension of the format ".***" If not all of the bytes are used, fill the remaining spaces with null bytes.
All bytes afterwards are contained within packets, which are to be arranged in the ascending order of their ID bytes.

64
Casio Calculators / Low level hardware emulation
« on: March 20, 2011, 11:21:37 pm »
After a discussion about x86 emulation and WINE on #omnimaga, I became curious about the possibility of an emulation layer to provide additional functionality to Prizm programs by replacing missing hardware like the FPU and potentially other higher level functions.

Here's the basic conceptual framework I came up with:

  • All Assembly/C programs would go through a low level interpreter. This interpreter would be interrupt based and would copy a section of code into a buffer.
  • The buffer would be terminated with a Sleep instruction so that if the code finished executing the buffer, the processor would halt until the next interrupt fired in a few milliseconds.
  • When the interpreter detected something like an FPU instruction code, it would handle the instruction by replacing it with a call to a library routine.

This raises some obvious points, like the slowdown inherent in interpreted programs, but I don't think that's a serious problem, since most applications aren't speed critical enough for that to be a problem. Such an interpreter would also operate very low in the system, so it could probably be accomplished in only a few hundred cycles. You could also replace the interrupt/Sleep idea with a call to the interpreter so that it automatically calls the interpreter upon finishing. That would leave the interrupts open for modification by the program, as long as it doesn't modify itself to overflow the buffer.

Anyway, just a thought.

65
Gaming Discussion / Awesome games
« on: March 20, 2011, 12:30:02 am »
A list of the best games of all time, starting from the best.

  • Legend of Zelda: Ocarina of Time: Simply the best game ever made. It has the story, reasonable graphics, almost limitless re-playability, and a short guy with a fairy.
  • Doom: If you don't recognize the name, then you can't be helped.
  • Super Mario World: Come on, any game that has plumbers who eat mushrooms and fight deadly turtles with flaming flowers and hallucinogenic stars is awesome.
  • Tetris: It's been ported to more platforms than any other game in history. It's also the game with the longest prison sentence for playing, after Faiz Chopdat was jailed for 4 months as a result of playing the game on a plane.
  • Ms. Pac-man: This game managed to pretty much launch the gaming industry. I couldn't even talk about the Halo without mentioning Ms. Pac-man twice!
  • Pokemon Red & Blue: 256 Pokemon, two rival trainers, one epic quest. Gotta catch 'em all!
  • Resident Evil Franchise: While Resident Evil 4 is probably the best, all of them are good enough that you can play them for hours non-stop. I did that once with a friend at his birthday party. The fact that I even remember the game when I consistently forget the date of my own birthday should tell you something.
  • The Game. Look up at the URL. Now look back at this text. Don't tell me you didn't expect it.
  • Final Fantasy: No one can agree on which one is their favorite, so they're all up here.
  • Minecraft: It's such a unique variation on the sandbox genre that I think we'll be seeing many more games like it in the future. Who knew graphics even more pixelated than Ms. Pac-man could be so fun?
  • Tony Hawk: Not my favorite, but everyone else seemed to love it when it came out.
  • The Halo Franchise: This is one of the most talked about franchises in history (After Mario, Zelda, Pac-man, Tetris, ...,etc), so that's pretty much why it's up here. The graphics and gameplay are decent compared to Pac-man, but they haven't managed to port it to the important platforms like calculators yet.
  • Goldeneye 007: Personally, I never liked this game much because of the odd controls, but a lot of other people apparently do.
  • Need For Speed Franchise: While these may not have been the first racing games or the best, they're still the games everyone thinks of with regards to racing. Just look at the fact that there were several movies made under the title.
  • Mortal Kombat: You can still buy the arcade versions of this...
  • World of Warcraft: Yeah, I don't like it either, but any game that can inspire half of the reactions from being guild kicked on Youtube is pretty influential.
  • Soul Caliber: Never played it, but it's supposedly pretty good.
  • Dragon Warrior franchise: It has "Dragon" in the name.

66
Site Feedback and Questions / Site funding and maintenance
« on: March 16, 2011, 01:28:45 am »
Since DJ has officially announced his resignation from omnimaga.org and the larger TI/Casio community, Omnimaga now faces the uncertain question of future funding after the hosting bill of $334.89 USD is due in October. While the remaining administrators will attempt to cover as much of the costs as they are reasonably able, the funds are likely to be insufficient. Therefore, on behalf of the staff and moderators, I have posted this poll for public discussion of solutions to the problem of future Omnimaga funding.

Note: Any form of donations will be accompanied by periodic and transparent publications of Omnimaga's financial records in order to assure donors that their money is going towards what they intended it for rather than into the pockets of those responsible for handling the money.

Thank you

67
Casio Calculators / Major SuperH ports
« on: March 14, 2011, 04:30:49 pm »
There seems to be some confusion and general lack of knowledge about exactly what has been ported to the SuperH processor, specifically the SH-3 processor, in the past, so I hope I can alleviate some of this with a partial list of some of the [major] ports I'm aware of:

OSes

Windows CE

NetBSD
See ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/sh3el/5.0_2009Q4/ for a list of games and other files ported to the platform.

Languages

Kaffe (A variant of Java)


Unconfirmed for platform

Python*

Perl*

OpenEmbedded

Jlime*

Crysis 2

Firefox 4 beta


If anyone knows of anything else, please let me know.

*Likely ported or in the process of porting.





68
Other / Commercial software
« on: March 14, 2011, 02:50:15 am »
If you're going to produce commercial software, here are a few rules that absolutely everyone should follow:

1) Design without a purpose. Everyone knows that commercial software designed for an actual market doesn't sell. Design for a market with few people. Better yet, make sure the market doesn't even exist. A good example of this is the DJvu converter hosted at http://www.convertdjvutopdf.com/. Although few people have even heard of the format, let alone use it, a proprietary converter to the more widely used PDF format exists. Don't let the "freeware" signs fool you. To get any actual use out of it, you have to pay for it. That's exactly how I think software should be.

2) Don't bother bug testing. There's nothing like using some software only to have it bug out halfway through a large, time consuming project. It's even better if you allow the user to cause fatal errors and data corruption in the program simply by having the program running while they have text or other common things in their Copy/paste clipboard as Logicworks allows you to do.

3) Make it useless. Don't let utility slow you down. The off-line IP country finder by Fairdell software accomplishes this in an amazing 1 MB of space.

4) There may be half a dozen competitors in the market already offering software of equal quality for little to no cost, but don't let that stop you from making another Text editor or unit converter.

5) Use up all the memory you can. Just remember that your users are practically begging you to get rid of their extra memory space. Don't worry that your label maker uses up 200 MB. If anything, you should expect thank you letters in the mail from your users.

Keep these in mind, along with a thoughtful disregard for common sense and you'll be on your way to making millions from your next proprietary quadratic solver.

69
Computer Programming / 3D Map data
« on: March 11, 2011, 12:35:40 am »
How is 3D map data typically stored in games and what types of file formats are commonly used? Also are there editors available? Any help would be appreciated, since it seems to be somewhat of an arcane art according to Google.

70
Casio Calculators / #Prizm: A Prizm discussion group
« on: March 06, 2011, 06:08:39 pm »
I'd like to announce the new channel for the Casio Prizm on EFnet, #prizm. This wasn't really a formal thing, but given how many bots have gone through, I suppose it's stable enough for announcement.

Anyway, add it to your /join lists and enjoy  :)

71
General Calculator Help / Good game [and program] design
« on: March 06, 2011, 02:22:23 am »
Good game and program design is actually a very simple thing, but it has to be done carefully to be successful.

Game design

  • Come up with a good idea that you would want tp play. If you don't want to play your own game, then chances are few other people will either.
  • The least followed rule of game design is to check if your game exists. Get on Google or ticalc.org and look for similar games. If a similar game exists, don't make your own unless it will be substantially different from all previous attempts. Making yet another WFRNG is unnecessary. Porting one to a new device is useful.
  • Plan it out. Too many games require major overhauls because the author realizes halfway through the project that their original idea isn't good enough. This is especially true if you're writing a story based game like an RPG.
  • Be realistic. You're not going to get Modern warfare 2 running on your TI-83+ or Crysis on your Prizm.
  • Speed, speed, speed. Keep your game as fast as is reasonably possible within the constraints of the language, even if it means that you have to delete that fancy HUD that takes a full second to render. There's nothing like 1 frame per minute graphics to make you want to immediately delete a game.
  • Keep it light, within practicality. The vast majority of calc games don't require more than a few kilobytes of memory. Making them into an app just wastes user space and introduces some incompatibilities with older calcs. That said, there are definitely exceptions to this rule, such as when that space is effectively used to enhance a game. For example, Illusiat 13 uses the memory it takes to create an absolutely massive world.
  • Keep the User Interface clean and simple. A crowded UI is confusing and makes games difficult to use.
  • Include documentation. The end users can't read your mind. Give them a simple readme.txt file (written in English!) to answer a few basic questions about the controls, the storyline, the game itself and so on.
  • Use standard keyboard mappings. I can't speak for everyone, but I'm liable to get very annoyed at a program that uses the Clear button as the Enter button or something equally ridiculous. Also, let me repeat myself: include the controls in the documentation, even if they're entirely standard.
  • Debug, debug, debug, debug, debug, and debug again. There is NO reason not to debug if you do not have a deadline. Far too many games fail to debug properly and are thus rendered inoperable by many users.
  • Include all of the necessary files to run your program. This might sound silly, but you'd be surprised how many people forget to include that one subprogram that contains the entire game engine.
  • Keep it widely compatible. Don't write the game so it only works with one version of an obscure, unreleased shell written in 1998.
  • Handle errors effectively. Don't let a text based game crash because the user entered a number rather than a letter.

Program design:

  • All of the rules in the previous list apply here as well. Read them.
  • Don't reinvent OS functions in slower, less accurate ways.
  • If you're writing any sort of quadratic solver, give up, go home, and please don't release it. Your users will be perfectly content picking from among the other 3000 quadratic solvers. Now, Nth degree polynomial solvers that can find complex roots are another matter...
  • Keep the download size small, please. A good rule of thumb is that if your documentation takes up more space than your program, your program is one of three things: Too complex to ever be used effectively, too brilliant for a coder of your caliber to be reading this, or the documentation is too large. Chances are, it's the third option. There's no need for multi-MB documents to explain your 2 KB quadratic solver.
  • Write the documentation in a known language, preferably English. Most of your users will not understand that obscure language spoken in a South American village deep in the Amazon.
  • Don't knock off proprietary commercial software like Windows and port it to your calc in BASIC.

72
Casio Calculators / The Hacker's toolkit
« on: March 04, 2011, 06:42:52 pm »
I've put together some tools and materials that are very useful in developing for the Prizm. It's very rough right now, but I think it covers all of the major bases and gets the information across.

Download: http://www.megaupload.com/?d=HRXZXH5N

73
Casio Calculators / File formats
« on: February 19, 2011, 03:25:58 am »
Hello, if anyone has access to files of the following formats, would you mind releasing them to me? I'd like to publish some documentation on the file formats and I need to look at them first.

The formats I don't have: .g2m, .g1r, .g2r, .g3l

The formats I'd like more examples of, excluding the previous list: .g1m, .g1e, .g2e, .g3e

Thanks  :)

74
Casio Calculators / The origins of the Prizm
« on: February 16, 2011, 03:28:45 am »
I'd like to present the spiritual predecessor to the Casio Prizm, the HP Xpander.



The HP Xpander was an experimental calculator by HP that sadly never made it to market. It used an SH3 CPU running Windows CE and would have had 8MB program RAM and 16 MB ROM with an additional expansion slot. As you can see in the picture, it had a massive B/W screen with 240×320 pixels. The screen also allowed a stylus to be used instead of the butttons, making it effectively an early touchscreen calculator, back when it was announced in 2000.

Unfortunately, HP canceled the project only months before its release and few projects were ever developed for it. One can only imagine what the calculator world would look like today had this revolutionary product been released.

75
TI-BASIC / Arbitrary precision operations
« on: February 16, 2011, 03:03:09 am »


I made this little utility in response to a topic on TI-BASIC Developer. It's an addition utility that can get around the OS imposed arithmetic limit of 14 digits of precision. Nothing special and not worth releasing on Ticalc.org, but I hope someone finds it useful.

Pages: 1 ... 3 4 [5] 6 7 8