Author Topic: Mosaic Feature Requests  (Read 12639 times)

0 Members and 1 Guest are viewing this topic.

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: Feature Requests
« Reply #15 on: July 06, 2010, 11:25:26 pm »
Assuming there's enough space left in the app, maybe the more common include files (or, at least, the one for compiling without a shell) could be built into it, like CrunchyOS and Basicbuilder do with programs? That would save space on the calculator, as I think it was said that the include files would take up a lot of space.

Of course, that assumes there would be enough space left on the app to keep it at a single page- I don't know, there might not be. (Unless Mosaic ends up being a two-page app anyway, of course).



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Feature Requests
« Reply #16 on: July 07, 2010, 03:49:59 am »
In Axe, it only updates the progress every 256th parsed expression.  Do not update it any more frequently than that!  If there is anybody who has used Axe Parser since 0.0.1 you may remember how slow it was when I used to update after every expression... displaying the progress was literally taking up more than 95% of the CPU.
« Last Edit: July 07, 2010, 03:51:56 am by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Feature Requests
« Reply #17 on: July 07, 2010, 05:04:32 am »
yeah I remember that x.x

It took like 10 secs to compile a 500 byte program XD
« Last Edit: July 07, 2010, 05:05:07 am by DJ Omnimaga »
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Feature Requests
« Reply #18 on: July 07, 2010, 05:22:48 am »
Oh, that's why it seemed to skip right to 100%.

Yeah, a GUI similar to Axe would be nice, and editing/assembling out of archive could be very useful.
« Last Edit: July 07, 2010, 05:26:02 am by Deep Thought »




Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Feature Requests
« Reply #19 on: July 07, 2010, 11:21:02 am »
In Axe, it only updates the progress every 256th parsed expression.  Do not update it any more frequently than that!  If there is anybody who has used Axe Parser since 0.0.1 you may remember how slow it was when I used to update after every expression... displaying the progress was literally taking up more than 95% of the CPU.
Ah, memories... ;D  All the 0.0.x releases did that. :D

I think include files may be kept on a external flash drive, but I'm not sure. ;D
« Last Edit: July 07, 2010, 11:21:14 am by ztrumpet »

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Feature Requests
« Reply #20 on: July 07, 2010, 12:46:45 pm »
Flash drive support or reading from archive would be good, because uncompiled assembly code is massive and you will run out of memory very fast with small programs
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Feature Requests
« Reply #21 on: July 08, 2010, 02:25:00 am »
Whoops, my feature request was already supported long ago:
Quote from: Mr_Coding_Knight
Yes, there is enough room.  Plus, the way that I am doing it, all the code will be in the archive.  I also plan on supporting assembling straight from the flash drive, so you can keep your files on a flash drive.

It's a really good idea, since the source and assembled code together would otherwise take up a lot of RAM.

I think include files may be kept on a external flash drive, but I'm not sure. ;D

They don't have to be on a flash drive, do they? Because that would mean that 83+ owners wouldn't be able to use it :(

It'd be convenient if the include files were packaged inside the app, as TC01 mentioned, but being able to edit the include file on-calc would be really useful (that's what I liked about OTBP).




SirCmpwn

  • Guest
Re: Feature Requests
« Reply #22 on: July 11, 2010, 03:15:08 am »
Making the hex code publicly viewable (that's actually what I liked about OTBP). Wouldn't it be small and simple to parse each individual nibble and simply display its token after the assembling is complete? Maybe it could be an option?
Probably not.  Im basically going to include calcsys though, so you can achieve a similar effect.

What do you mean by including CalcSys? Will Mosaic have a built-in hex viewer? That'd be nice :D
Basically, I will take the source from CalcSys when I am done with Mosaic, and add stuff until I fill up the leftover room on the last page.  I say "last page" because although I am trying to target one page, I don't want to lock myself into a single page so early on.

It would be a very cool feature to have it do both compiling and disassembly.  Even if the disassembler is done very simply without creating local labels or anything complicated like that, it would still be very useful.
Disassembly, assembly, and hex editing is all planned.  The hex editor and disassembler are the first to go in from CalcSys.

Constantly displaying the line getting assembled. That would give a sense of "where it is".
It won't do this.  It's a bit complicated, I'll explain below.

Oh, that's why it seemed to skip right to 100%.

Yeah, a GUI similar to Axe would be nice, and editing/assembling out of archive could be very useful.
Assembling from the archive is definately planned.  Editing, however, uses the edit buffer and free RAM.

About the errors, the assembler does not stop assembling when it hits an error, unlike OTBP.  It makes a note of the error code, where it is, and saves it to a list.  Then, it moves on.  At the end of assembling, the assembler gives that list to the GUI, which then will display it in a nice, organized and browsable format, which programmers can use to see where in the source each error is.  Think of assembling in an IDE, like Visual Studio or ZDS, and you get the idea.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Feature Requests
« Reply #23 on: July 11, 2010, 12:41:55 pm »
Wow nice, I like the idea of being able to know where is our error in a more easier way. With TASM it took me so long to figure out where was my issue in Hello World causing No END Directive Before EOF x.x
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Feature Requests
« Reply #24 on: July 14, 2010, 07:35:10 am »
That's a good idea. The assembler's probably so fast that if it corrects errors as it gets to them, like OTBP, it'll probably just get confusing :)

So what's the include file going to be? Is it a program of its own, or is it stored somewhere inside the Mosaic itself?




SirCmpwn

  • Guest
Re: Feature Requests
« Reply #25 on: July 16, 2010, 04:48:21 am »
Include files will be AppVars with raw text, unless this proves impractical.  If so, I will revisit them.  Of course, popular include file formats from PC assemblers will be supported via flash drives as well.  Let me work out basic assembling first, and I'm almost done with that one.  I will support include files soon, never fear.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Feature Requests
« Reply #26 on: July 19, 2010, 01:55:24 pm »
Good luck SirCmpwn, and I hope nothing bad happens to the project like reformatting or something like that
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Feature Requests
« Reply #27 on: July 25, 2010, 05:18:20 am »
If it's possible, what about some sort of added ASM call that can would assemble a program without going through the GUI?

And good luck with this!




SirCmpwn

  • Guest
Re: Feature Requests
« Reply #28 on: July 25, 2010, 02:36:18 pm »
I have something in mind that may do that for you...

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Feature Requests
« Reply #29 on: July 29, 2010, 04:24:51 am »
Do you mean like a hook that lets you use a command like real(prgmNAME) from the home screen and it launches the compiling portion of Mosaic?
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)