Alternatively, join us on Discord.

Z80-based pico8 clone?

Started by Snektron, September 07, 2016, 08:25:15 pm

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Snektron

September 07, 2016, 08:25:15 pm Last Edit: September 07, 2016, 08:36:13 pm by Cumred_Snektron
Recently i came to the idea of making a Z80 based pico8-like platform. I wonder how many people would be interested in such a thing.
I myself find the z80 a pretty cool language, but i kinda lost interest in calculators :/.
It would boot the KOS kernel, but wouldn't use the (standard) programs on it since the project would not aim for calculator like emulation.
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


c4ooo

Interesting, if you do this in java i'll be grateful to help! Are you thinking of mimicking a specific platform, like the TI84 series?

Snektron

I have a C++ course on my uni so this would be an excellent opportunity to do some more stuff in it. That and i could use Z80e ;)
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


gameblabla

I'm not sure to understand... do you want to create a programming language similar to z80 assembly with
a similar spirit ?
Or you want to create a physical device with a z80 processor in it with its own API similar to pico8 ?

Snektron

I want to create pico-8 with z80 (or anything that compiles/runs on it) instead of lua
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Hayleia

Not sure either if I understand correctly :P

You want to make a z80-like language that would "compile" in bytecode or something that would run in a "vm" that you wrote too, allowing you to write programs for your PC (or whatever the "vm" is ported too) in that z80-like language?

gameblabla

Quote from: Cumred_Snektron on September 08, 2016, 06:20:19 am
I want to create pico-8 with z80 (or anything that compiles/runs on it) instead of lua

So you want to make a pico8 API for z80 assembly ? Ok, that makes sense.
Probably the best z80 platform for your project should be the Gameboy : it has a z80 clone in it and a C compiler called GBDK. (as well as an assembler)
The Gameboy also closely follows the pico8 specifications : its resolution is slightly bigger than pico8's one and the art style is the same as the Gameboy color.
Pico8 supports much more sprites on screen though.

If you don't like the gameboy, then have a look at the targets supported by z88dk :
http://www.z88dk.org/wiki/doku.php?id=targets

This is what i used to make my Flappy Bird for Vtech Laser 200, it comes with a C compiler and an assembler.
Sega Master system, Amstrad CPC, MSX... the choice is yours.

Snektron

Quote from: Hayleia on September 08, 2016, 06:32:18 am
Not sure either if I understand correctly :P

You want to make a z80-like language that would "compile" in bytecode or something that would run in a "vm" that you wrote too, allowing you to write programs for your PC (or whatever the "vm" is ported too) in that z80-like language?


No, i want to make a similar "fantasy console", but with Z80 instead of lua. It could run a modified knightos rom, so that gets a bit more pc attention too. The idea is being able to program z80 asm for fun without the need for an actual calculatoe.
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Hayleia

Quote from: Cumred_Snektron on September 08, 2016, 08:15:57 am
Quote from: Hayleia on September 08, 2016, 06:32:18 am
Not sure either if I understand correctly :P

You want to make a z80-like language that would "compile" in bytecode or something that would run in a "vm" that you wrote too, allowing you to write programs for your PC (or whatever the "vm" is ported too) in that z80-like language?


No, i want to make a similar "fantasy console", but with Z80 instead of lua. It could run a modified knightos rom, so that gets a bit more pc attention too. The idea is being able to program z80 asm for fun without the need for an actual calculatoe.

That's what I said actually :P
Except that you seem to want real z80 instead of a z80-like language, and instead of doing your vm completely from scratch, you use KOS as a base (still almost from scratch but not totally).

Snektron

Exactly. But i dont know if people would be interested in programming on something like that...
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


ben_g

I think it would be interesting, especially if it would be compatible with actual calculators.

DarkestEx

Quote from: Cumred_Snektron on September 08, 2016, 12:06:33 pm
Exactly. But i dont know if people would be interested in programming on something like that...

While it sounds like a nice idea and I know you want to get into some real projects again (btw did you make any progress on the compiler ;)), I don't know what the benefit would be over a real platform like a TI-8x emulator.

Quote from: ben_g on September 08, 2016, 12:09:11 pm
I think it would be interesting, especially if it would be compatible with actual calculators.

That wouldn't be the point because it would be a custom platform. There are already numbers of calculator emulators out there.

Hayleia

Quote from: Cumred_Snektron on September 08, 2016, 12:06:33 pm
Exactly. But i dont know if people would be interested in programming on something like that...

I actually thought about something similar but different at some point.
Basically, the same kind of idea as yours, a vm that is able to run a z80-like or ez80-like language natively with color support and maybe the ability to specify the screen features we need (so people who want to port monochrome calc games can specify "monochrome 96x64" and people who want to port color calc games can specify otherwise, and people who don't want to port anything but make their own game in 640x480 can do it too).
Not sure if using KOS as a base is a good idea for that one idea here though.

And the reason why I wanted something like that was to get Axe working on PC :P
Obviously, not the original Axe Parser, which compiles calculator tokens into real z80 language for monochrome calcs (and not into some (e)z80-like language for a potentially color screen) but an Axe Parser that would first support this target (for easier debugging purposes mostly) then maybe the CE since I have no idea if Runer plans on porting it.

But that was more my fantasy project rather than a real project for a fantasy console :P
(I even had names in mind, the (e)z80-like language would have been Axm, Axe would have been Axe, and the whole project would have been the project Legaxy :P)

I felt like it would have some potential.
I mean, golfers and stuff, people who love to write 256 byte codes that do amazing demos etc, they'd most likely be glad to have a platform where they can do what they enjoy and that actually runs on more than just the windows terminal (for example) due to the vm being potentially available on several platforms.

DarkestEx

Quote from: Hayleia on September 08, 2016, 08:00:00 pm
Quote from: Cumred_Snektron on September 08, 2016, 12:06:33 pm
Exactly. But i dont know if people would be interested in programming on something like that...

I actually thought about something similar but different at some point.
Basically, the same kind of idea as yours, a vm that is able to run a z80-like or ez80-like language natively with color support and maybe the ability to specify the screen features we need (so people who want to port monochrome calc games can specify "monochrome 96x64" and people who want to port color calc games can specify otherwise, and people who don't want to port anything but make their own game in 640x480 can do it too).
Not sure if using KOS as a base is a good idea for that one idea here though.

And the reason why I wanted something like that was to get Axe working on PC :P
Obviously, not the original Axe Parser, which compiles calculator tokens into real z80 language for monochrome calcs (and not into some (e)z80-like language for a potentially color screen) but an Axe Parser that would first support this target (for easier debugging purposes mostly) then maybe the CE since I have no idea if Runer plans on porting it.

But that was more my fantasy project rather than a real project for a fantasy console :P
(I even had names in mind, the (e)z80-like language would have been Axm, Axe would have been Axe, and the whole project would have been the project Legaxy :P)

I felt like it would have some potential.
I mean, golfers and stuff, people who love to write 256 byte codes that do amazing demos etc, they'd most likely be glad to have a platform where they can do what they enjoy and that actually runs on more than just the windows terminal (for example) due to the vm being potentially available on several platforms.

The idea doesn't sound bad :)
Similarily what I had in mind for my project, though I had a different motivation to start it (which was need of a compact VM language for embedded systems).

c4ooo

I guess someone could just take the the wabbit code, remove all the "emulator" UI, and just leave the LCD so it looks like the user is playing the game natively ;)

Powered by EzPortal