The good news - i have got scans of vega schematics (big thanks to Kold666)
The bad news - hardware is quite old (early 80s .. possibly 1982 or 1983) (read: unique and complicated) and schems are buggy as hell.
The biggest problem so far - no reference images/screenshots/flyer pics. Nothing. I have no f***ing idea about the real game.
So
any info will be greatly appreciated.
Schems are as mysterious as the pcb pics i got - no info about the major ICs.
But looking at pinout i have identifed all of them as:
-
i8035 (mcu)
-
AY 3-8910 (sound)
-
PPI 8255 (i/o)
-
INS 8154 (i/o + ram)
-
DP 8350 (crt controller)
AY is used only for generating sfx. Afaik there's no music. Sound chip is connected in unusual way - AY data lines are tied to address bus and AY address/data write selection is connected to mcu R/W line. So, writing any data to address NNN within range mapped to AY - results in setting AY address register to value NNN. Reading from address MMM store MMM in AY data register. Weird, isn't ?
Graphics hardware consist of four different "blocks":
-
text layer - 1bpp fonts with hardcoded (PROM) color for each character. Bullets and some type of enemies are made of characters on text layer.
-
four "type1" sprites - simple format, 32x32 pixels, horizontal flip, direct color (1r1g1b + extra unknown bit). Used mainly for enemies (spaseships)
-
single "type2" sprite , used for player's ship/explosion only- 32x64 object made of 32x4 slices.
-
single (?) "type3" sprite - not emulated yet. Quite big (possibly 64x64) obejcts (planets, asteroids) with special 2kb lookup table.
So far, the most complicated to emulate was the type 2 player sprite. It's auto-animated (based on vblank counter). There's also a 256x4 PROM used as a lookup table , connected in a bit weird way :
Here's some (test/temporary) formula i'm using to draw the sprite:
And now few fresh screenshots. Sprite positions (type1 and type2 (last pic)) and colors may be wrong: