Hello.
I was recently looking at the source-code to a well-known Atari game called, "Adventure" and wondered if Pico-8 could have a piece of this pie.
Having seen @zep's mind-blowing, "Squiddy" clocking in at 1024-bytes:
https://www.lexaloffle.com/bbs/?tid=44826
I wondered if it was possible for Pico-8 to adopt the Atari's 6502-assembly code and memory locations (choose between P8 and Atari) and for a few reasons.
-
Pico-8 could play any Atari game, source-code or not, you just need the binary.
- Most Atari games are at 4096-bytes or less. This includes PITFALL.
- New graphic tricks could be done, resolution would expand, sounds would be unique, and you would have a whole host of new colors to choose from. See Barnstorming skyline for instance.
- It would increase the existing Atari 2600 library, serve the Atari 2600 community, and educate people in new methods and styles of programming for it.
All good things and @zep could provide an editor for it much as we have now for Pico-8 except for working in effectively and easily the 6502-assembly language.
hmmm... not a simple task. First of all you must emulate the 6507 processor:
https://github.com/JorjBauer/lua-6502/blob/master/6502.lua
This muss be adapted to pico8 - but it uses already about 8000 tokens.
The second problem is the graphics:
from wikipedia: "All modes are 160 pixels wide. NSTC mode provides 192 visible lines per screen, drawn at 60 Hz, with 16 colors, each at 8 levels of brightness."
Pico8 can't do this.
Third problem could be speed.
oh, you mean, that zep should write a pico8-vcs-version...
Thrust me, you don't want to program in assembler. especially 6502 one. You have no table, no for-loop, no functions or variables. You have only 3 Register, one for addresses and two for values. It is like 3 variables in lua, and when you want to store more information, you need peek() and poke().
Also the graphics - the vcs hasn't a framebuffer, you must draw "on time". so no spr(), map(), line() and so on.
You can read about it here: https://en.wikipedia.org/wiki/Television_Interface_Adaptor
It is quite complicated to program with.
Superb explanation, @GPI. And yes, you're right. Assembly is no fun. I did a LITTLE bit of 6502 assembly programming back on the Apple ][ computer. Mostly to do very simple things like create fancy audio tones like a synthesizer and to merely transfer HIRES page to page 1 quickly. Later with a great deal of effort I made a HRCG that was 8-pixels across instead of the usual 7. For true B&W displays.
Yet ... it might be interesting to see what the incredibly brainy Pico-8 community could do in such an unbridled language with unrestricted graphic and audio methods and hacks.
The Atari do you mean, @MartaIlyich ? I think they went from 2600 on to - let me think ... It was the Atari 800, Atari 400 (no I didn't understand the numbering system myself). An Atari One was never made.
From there it went to 5200, the Atari ST, that was a personal computer, the 7800. They made a nice little portable system called a LYNX. I know there was a Jaguar. Seems like Atari had feline on the brain.
And I think that's it. There hasn't been anything since. Can you imagine if Atari was keeping up with their game and went to head with Sony Playstation and Sega Saturn ? Wow ! The sparks would fly - and what new games would we have seen that today are not there ?
[Please log in to post a comment]