Emulation on the Uno/Nano

Is it possible to emulate for example the VIC-20 with video on the Uno/Nano?

No. There's not enough RAM.

I'd say there is.

Maybe if you don't allow user-defined character sets.

I'd say there is.

Wikipedia says the VIC-20 had 5kB of RAM, of which 1.5kB was for the screen..
The Uno has only 2kB to start with.

Of all the machines I'd want to emulate, the VIC-20 is near the bottom of the list.

Why not emulate the Atari VCS or something?

Because the Atari does it's screen in software and that requires cycle correct emulation.

And I already did the VIC-20
Works like a charm.

http://www.hackster.io/janost/the-nano-vic-20

Nano VIC-20.jpg

janost:
Because the Atari does it's screen in software and that requires cycle correct emulation.

So?

So, in fact, this thread is just an exercise in rhetoric, and the emulation is impressive, but partial?

fungus:

janost:
Because the Atari does it's screen in software and that requires cycle correct emulation.

So?

If you want to run a videogame, just rip out the emulator parts and define the tiles in RAM.
It has room for up to 128 8x8 tiles and you still have 500bytes SRAM left for the game.

No need to emulate any other machine.

AWOL:
So, in fact, this thread is just an exercise in rhetoric, and the emulation is impressive, but partial?

I don't think you get it?

The VIC-20 is like any CBM 6502 machine.
It's exactly the same as PET/C64/C128 and the rest but with a lower resolution and less memory.

Just to make it boot on a memory starving 328 and with an NTSC video output is one hell of an achievement.

Sure,
Throw in a 64K memory chip and it will even boot an Apple-II.
With onchip video.

Most people here thinks that the TVout library is an achievement.
Well I think so too but it can be better.

A lot better.

janost:

AWOL:
So, in fact, this thread is just an exercise in rhetoric, and the emulation is impressive, but partial?

I don't think you get it?

I think we do. You're not emulating a VIC-20 at all because no real VIC-20 software will run on it.

janost:
Most people here thinks that the TVout library is an achievement.

Yes, but it's not really surprising or magical. It's really just a case of counting clock cycles very carefully.

If you want to make something that people will use then write a library that turns a pro mini into a display adapter with a few external resistors (or something like that). Send text to it over the serial port and it displays it.

Even so, the TV set is dying. I can get full color TFT screens on eBay for about $6. Which would you rather have for debug output?

PS: The reason for emulating an Atari VCS would be that you get all the fun of counting clock cycles for an emulator plus you get to play the games afterwards.

I looked at the Atari VCS and it's actually very doable.
I have to make some research but it can be made to work without cycle emulation.

As for your TV statement I think it's true.
I may have to switch to VGA output instead.

For doing a display adapter I have to use SPI or i2c because the serial port does not work when sing it for video.

janost:
I looked at the Atari VCS and it's actually very doable.
I have to make some research but it can be made to work without cycle emulation.

It's all line based. You can prepare individual lines then output them.

It seems like a good challenge ... and it's something other people might be interested in building.