Join us on Discord!
You can help CodeWalrus stay online by donating here.

[theoretical][debate][TI-84+CE]About porting Axe Parser to color calculators

Started by Agothro, January 04, 2015, 06:02:17 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

PT_

#75
Quote from: Ivoah on March 30, 2016, 08:45:24 PM
Quote from: Hayleia on March 30, 2016, 08:43:53 PM
Point 2 can be fulfilled with @PT_'s ICE
I think ICE is compiled on a computer. He said he was going to write it in PHP.
Version 1 will be in PHP, but I'm working on version 2.0, which will be in ASM :) (and even designing a frontpage + writing a documentation pdf :D)

Hayleia

Quote from: Ivoah on March 30, 2016, 08:45:24 PM
Quote from: Hayleia on March 30, 2016, 08:43:53 PM
Point 2 can be fulfilled with @PT_'s ICE
I think ICE is compiled on a computer. He said he was going to write it in PHP.
What the above post said :P
But even if it were computer only, the other points in my suggestion (like the fact people may agree to help more on a PC project than on a calculator project) are to be considered maybe.

Dream of Omnimaga

#77
Quote from: Hayleia on March 30, 2016, 08:43:53 PM

3) fill the gap between Basic and Asm

Point 3 is defeated by C.
Not really @Hayleia . Certain people who liked Axe dislikes C or found it much more difficult to learn (it depends of what they wanted to do with Axe, though). So no, the gap between Basic and ASM isn't filled completely. I believe that even yourself mentionned in the past that you prefered Axe to C by a large margin. Whether C bridges the gap or not is a matter of opinion, and I think that Axe programmers who finds C too hard should be considered.

As for if ICE or a new Axe should be on-calc or not, it depends. Having no on-calc compiler would defeat the point of on-calc programming capabilities, but on the other hand, fewer and fewer people program on-calc, especially considering how slow the CE BASIC editor is compared to monochrome calculators (you can only type 4 characters per second at the top of the screen). A PC compiler would be very handy, because you would just need to export to 8xp with TokenIDE or SourceCoder 3 or save the code, then all you have to do is run your code or the 8xp source through a compiler, and voilĂ .

As for why I brought up this topic again despite the arrival of ICE, it's because certain people said they wanted Axe syntax and nothing else. I think that it would be fine if both languages co-existed, though, but of course getting support would be harder since fewer people would use each of them.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Hayleia

Quote from: DJ Omnimaga on March 30, 2016, 09:03:50 PM
Not really @Hayleia . Certain people who liked Axe dislikes C or found it much more difficult to learn. So no, the gap between Basic and ASM isn't filled completely. I believe that even yourself mentionned in the past that you prefered Axe to C by a large margin. Whether C bridges the gap or not is a matter of opinion, and I think that Axe programmers who finds C too hard should be considered.
Yes, I did mention I liked Axe better than C, and I still do :P
That's also why if my suggestion was completely done (with the bytecode compiler and interpreter on PC), I would be happy to code in Axe on for PC too, but as I said, maybe I dream too much :P

But yeah, I didn't mean "it completely fills the gap", more that unlike on the monochrome calcs, there isn't such a huge gap. At least some people, even though not all, can switch to C instead of having the choice between Basic and Asm.

Dream of Omnimaga

Ah ok, because it seemed your post said it completely filled the gap, which many people did in the past, based on their opinions. Sometimes I get the impression that certain community members wants advanced TI-84 Plus CE development to remain exclusive to C and ASM fans and shun out the rest.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Hayleia

Quote from: DJ Omnimaga on March 30, 2016, 09:18:09 PM
Ah ok, because it seemed your post said it completely filled the gap, which many people did in the past, based on their opinions. Sometimes I get the impression that certain community members wants advanced TI-84 Plus CE development to remain exclusive to C and ASM fans and shun out the rest.
That's not my case, otherwise I would not have considered ICE for my point 2 :P
But then, I don't know what could have been considered there actually.

Dream of Omnimaga

Maybe if someone ever made an on-calc C editor and compiler like Mimas, but not for ASM. But then, you still have the issues I mentioned above, and it would most likely require a custom editor anyway. I remember in 2005 when MLC Beta came out for the TI-86 and it required typing special characters (because commands started with #). It was a nightmare to type anything. >.<
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

c4ooo

@Hayleia although a lang that compiles to PC and CE would be awesome and cool, it seems impractical to me. What could be done is an emulator geared not toward debugging, but towards the cinematic exposure of games.

Dream of Omnimaga

I am not sure what you mean by that c4ooo. Are you saying that Axe CE should be compilable only on-calc like the original and require PC users to use an emulator in order to compile their games? Or are you saying there should be an Axe emulator for the PC? (like Jacobly's monochrome Axe emu)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

c4ooo

What ime saying is basically develop just for the calc alone, and release them for PC by packaging them with an emulator that will autoboot the game. However the emulator would not look like an emulator, but just like a native PC game. While TIOS is booting and the game being automatically executed, the emu could force the lcd to display like a splash screen or something so you dont actually 'see' the OS.

DR: the emu will emulate the compiled code and not the source.

Dream of Omnimaga

Oh I see now. The problem with that is that the user would still need a TI-84+CE ROM in order to run the PC game. That wouldn't be practical if the goal is to allow people to make PC games written in Axe.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Hayleia

#86
Quote from: c4ooo on March 31, 2016, 01:22:28 AM
@Hayleia although a lang that compiles to PC and CE would be awesome and cool, it seems impractical to me. What could be done is an emulator geared not toward debugging, but towards the cinematic exposure of games.
That's almost what I said. I didn't say the code would have to be completely compiled but that it would be some bytecode that could run from an interpreter or VM or whatever like Java. Integrating the emu into the program directly isn't a bad idea either. It would allow people to play the game without installing extra things. While not including the emulator would allow them to save space by having only one emulator to run all their programs. So maybe the two modes would be supported :P
And the bytecode in question would actually probably be exactly the 8xp file produced for calculators in the case of a setup that matches a calculator (I mean, if the compiler accepts resolutions higher than 320x240 "in PC mode", then we probably can't call that a calculator binary).

Quote from: DJ Omnimaga on March 31, 2016, 01:34:26 AM
Oh I see now. The problem with that is that the user would still need a TI-84+CE ROM in order to run the PC game. That wouldn't be practical if the goal is to allow people to make PC games written in Axe.
Not sure we would need a ROM actually. If the thing is only supposed to run the program so we don't need to run the TI-OS and stuff. Basically we just need a processor, some RAM, a screen and not even sure why we would need ROM memory (if we're running all that on a PC, we're not limited to 150Ko of RAM so we don't need to archive stuff to free RAM). The only problem is that bcalls would have to be rewritten I guess. But in that case, some kind of tweaked ez80 emu with no ROM other than the game could do the job.

c4ooo

OS calls though. Idk, maybe the emu could detect when a call to the OS has acured, emulate it, and return.

Snektron

If this project is really going somewhere, i recommend using LEG (piumarta.com/software/peg/peg.1.html)
Its a parser generator that generates ANSI C code, so it is even possible to compile it for on-calc usage. I've actually started to experiment in it.
You can make a simple script language in less than a day, so a compiler doesn't take much work. The biggest problem i've had is making a language comfortable with the TI editor, which won't be a problem if you'd compile from PC.

Another thing that would be possible is some sort of unified bytecode language, something like LLVM but perhaps a bit simpeler (no other data type than ints for example),
for which it would be relatively easy to add (Z80-like) backends. The biggest problem with this would probably be some kind of library linker, since you'd ideally want to be able to add libraries for different platforms, though that may be possible through native code.

Maybe i'll try to make a tiny proof of concept language some time soon.

Also im still for @Hayleia's idea of calling it Mace :3
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Dudeman313

Quote from: Cumred_Snektron on March 31, 2016, 12:31:40 PM
If this project is really going somewhere, i recommend using LEG (piumarta.com/software/peg/peg.1.html)
Its a parser generator that generates ANSI C code, so it is even possible to compile it for on-calc usage. I've actually started to experiment in it.
You can make a simple script language in less than a day, so a compiler doesn't take much work. The biggest problem i've had is making a language comfortable with the TI editor, which won't be a problem if you'd compile from PC.

Another thing that would be possible is some sort of unified bytecode language, something like LLVM but perhaps a bit simpeler (no other data type than ints for example),
for which it would be relatively easy to add (Z80-like) backends. The biggest problem with this would probably be some kind of library linker, since you'd ideally want to be able to add libraries for different platforms, though that may be possible through native code.

Maybe i'll try to make a tiny proof of concept language some time soon.

Also im still for @Hayleia's idea of calling it Mace :3
"Mace" sounds awesome.  ;D  If you do it, can I make the title screen?
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Powered by EzPortal