Author Topic: Mosaic  (Read 16269 times)

0 Members and 1 Guest are viewing this topic.

SirCmpwn

  • Guest
Mosaic
« on: March 22, 2010, 10:25:06 am »
I have discussed this for a while at Cemetech, but I figured I would put it here, too.
I am working on an IDE/Assembler that runs on-calc for z80 development.  In the past, projects like Tasm On-Calc and OTBP Assembler have done similar things, but both in BASIC.  This assembler is written in pure z80 assembly, so it should assemble at 10-20 times the speed of BASIC counterparts.  It also features on-calc debugging, a project management system, and, using usb8x, it can import/export to a flash drive as .z80 code files.

Feature requests/questions/comments/whatever goes here, or in the corresponding thread on Cemetech.

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6265
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Mosaic
« Reply #1 on: March 22, 2010, 10:48:19 am »
hmm, interesting, another attempt at pure ASM was made, but it was dropped during it's alpha and was extremely buggy. I'm excited for this for when I get my calc back and I get a mini USB to USB converter.
/e

SirCmpwn

  • Guest
Re: Mosaic
« Reply #2 on: March 22, 2010, 11:07:00 am »
mini USB to USB converter.

Just make one by hand, thats what I did and it works great.  You just need the right ends.

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: Mosaic
« Reply #3 on: March 22, 2010, 02:15:55 pm »
and good hands at manipulating electronics x.x

At work I always end up having to get the boss to repair the cart caddy pusher remote control cuz I always accidentally get the small wires unsoldered when changing the battery x.x
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Geekboy1011

  • The Oneironaut
  • Donator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2031
  • Rating: +119/-2
  • Dream that Awakening dream
    • View Profile
Re: Mosaic
« Reply #4 on: March 22, 2010, 07:19:52 pm »
ouch also this seems inteesting i cant wait to see what it turns into XD

Offline Hot_Dog

  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3006
  • Rating: +445/-10
    • View Profile
Re: Mosaic
« Reply #5 on: March 22, 2010, 09:11:29 pm »
Fascinating!  What do you hope that the debugger is going to do, actually run the program or test it safely so the calculator doesn't crash?

SirCmpwn

  • Guest
Re: Mosaic
« Reply #6 on: March 22, 2010, 09:45:01 pm »
I'm not entirely sure what you're asking, but it will modify the code at every breakpoint, re-assemble, and run.

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: Mosaic
« Reply #7 on: March 23, 2010, 12:13:55 am »
I think he meant the ability to test a program with error checking enabled. I assume this would be hard to do with pure assembly, though, right?
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

SirCmpwn

  • Guest
Re: Mosaic
« Reply #8 on: March 23, 2010, 12:34:45 am »
Very hard, but several people are working together on a soulution.
Also, as an update, the assembler has support for every one-byte opcode now.

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6265
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Mosaic
« Reply #9 on: March 23, 2010, 12:50:51 am »
Yay! Are you going to post alpha's/betas soon? Or are they not for a while?
/e

SirCmpwn

  • Guest
Re: Mosaic
« Reply #10 on: March 23, 2010, 12:24:01 pm »
Well, I will probably post the assembler later tonight, right now it only supports one-byte commands.
However, I promise to get an alpha out as soon as possible.

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: Mosaic
« Reply #11 on: March 23, 2010, 12:52:11 pm »
Cool!  I can't wait to see this.  Will macros eventually be supported, because those are really useful!

I'm just wondering, is there really enough memory on the calculator to write decently sized assembly source code?  It would probably have to be saved as groups or on USB since even a small project often takes more room than the entire free ram.  Although this is probably for simpler things I assume, like writing tools, routines, and maybe even small games since large projects are far easier to write on the computer.  And when you take into account the time for scrolling though the program, typing things out, and assembling, you'll definitely have to come up with some type of efficient system.

Good luck, hope this gets completed :)
___Axe_Parser___
Today the calculator, tomorrow the world!

SirCmpwn

  • Guest
Re: Mosaic
« Reply #12 on: March 23, 2010, 12:57:02 pm »
Cool!  I can't wait to see this.  Will macros eventually be supported, because those are really useful!

Done.

I'm just wondering, is there really enough memory on the calculator to write decently sized assembly source code?  It would probably have to be saved as groups or on USB since even a small project often takes more room than the entire free ram.

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.

And when you take into account the time for scrolling though the program, typing things out, and assembling, you'll definitely have to come up with some type of efficient system.

Right now, it assembles fast.  The following example code:
Code: [Select]
inc b
dec b
inc bc
dec bc
xor a
ret z
ret
assembles instantly.  You can't tell that anything happened unless you look at the output code.

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: Mosaic
« Reply #13 on: March 23, 2010, 01:34:30 pm »
Sounds nice. The BASIC ones always had the limitation of programs not being larger than the calc RAM minus the RAM taken by the assembler/IDE. Basically, you couldn't do ASM games larger than 11-12 KB for example, because in hex form, they took twice as much RAM

Back in 2003, there was another similar project in the works by Detacheds Solution called TitanASM but it died in August 2003. Another one by Keith Pierce was ChASM 2, but the author vanished completly in 2004. ChASM is avaliable on ticalc.org but it's incomplete and not fully functional :/
« Last Edit: March 23, 2010, 01:35:56 pm by DJ Omnimaga »
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

SirCmpwn

  • Guest
Re: Mosaic
« Reply #14 on: March 23, 2010, 01:55:57 pm »
Well, for some projects that require a more inclusive include file (haha), it will pretty much be usb8x or bust.  However, on-calc include files work fine as well.