NTSC signal with Arduino and Miku H@chuNe

Thanks for your porsting.

Arduino Duemilanove
ATmega328P has only 2kbyte RAM but has 32kbyte Flash ROM.
So, image data are arranged in Flash ROM

[Display Graphics]
There are 2 image dates.
One is the leek up and another is down.

16-step depth -> 16=2^4 so needs 4bits.
160[dot] *120[dot] * 4[bit(depth)] * 2 /8bit
= 19200byte < 32kbyte

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
d3 d2 d1 d0 d3 d2 d1 d0
| | | |
+--------------+ +--------------+
imag2 data image1 data

--- image1 out ---
...
lpm r0,Z+ ;0 [3clock]
nop ; [1clock]
out 0x08,r0 ; [1clock] 5clock/dot
lpm r0,Z+ ;1
nop
out 0x08,r0
...

--- image2 out ---
...
lpm r0,Z+ ;0 [3clock]
swap r0 ; [1clock]
out 0x08,r0 ; [1clock]
lpm r0,Z+ ;1
swap r0
out 0x08,r0
...

5clock/dot -> 1/16MHz * 5=312.5ns
312.5ns * 160 = 50us

[Display Text]
From the limitation of the processing time,it can display 8 characters.
I used V-RAM for horizontal scanning 1line.
8bits/character
so 8*8 = 64 byte RAM use.
Text data -> character generate data -> V-RAM for 1 sweeping
do this on every other line sweeping.
The effect of the afterimage of CRT and the mistake of man's eyes are used.

Not in time for MTM04,
the display about 20 lines is possible.
I think so using this way.

After MTM04,I hit on the idea of the technique for achieving 16characters * 20rows.
I think I can do it whithout using USART or SPI.
I try it soon or later.

I'm sorry poor in English.