*NEW EMULATOR* NES Emulator for PC8801

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
*NEW EMULATOR* NES Emulator for PC8801
by on (#109391)
http://www.geocities.jp/submarine600/ht ... esemu.html

This is very interesting, It simulates the PPU partially, but there's some limits:

-no scrolling, and also only uses one screen mirror (Expected for a system like this)
-sprites are White-ish and Semi-Mixed with Background
-can only simulate 16k PRG with 8k CHR (Corrected by Gilbert.)
-SLOOOOOOW!
-no sprite 0
-no IRQs
-no Bank Switching
-Screen Resolution is different, so it can't fit all the screen
Other limits go here!

So most non-classical games equal to or above supported specs like Super Mario Bros. 1 Cannot be emulated as far as I know!

Credit goes to the Author nicknamed ''BookWorm'' for the new emulator

EDIT - Info Corrected on CHR - Typo Fixed!
Re: *NEW EMULATOR* NES Emulator for PC8801
by on (#109458)
How many NES games out there don't use scrolling at all? Even the ones that didn't use scrolling in-game used scrolling in the title screen (although maybe those are playable if you can get past the title screen without looking at it).

Surprised it didn't at least try to do per-tile scrolling, but then again way more surprised that a PC-8801 is emulating a NES when it's a weaker system o_____O;
Re: *NEW EMULATOR* NES Emulator for PC8801
by on (#109459)
I don't think Donkey Kong or Duck Hunt or Mario Bros. scrolls, and I don't think Balloon Fight scrolls outside Balloon Trip.
Re: *NEW EMULATOR* NES Emulator for PC8801
by on (#109462)
2/3 the power of a TI83. Almost reminds me of the NES emulator for GBC.
Re: *NEW EMULATOR* NES Emulator for PC8801
by on (#109466)
tepples wrote:
I don't think Donkey Kong or Duck Hunt or Mario Bros. scrolls, and I don't think Balloon Fight scrolls outside Balloon Trip.

Nor Pinball or Lunar Ball, but I wonder if any of those non-scrolling games actually use scrolling as some sort of double buffer for the tilemap. The emulator definitely wouldn't be able to work properly with those. Also I just noticed it just trims off the bottom of the screen... Weird it doesn't try to center it instead =S

That said, does anybody know what logic is it using to determine the color of the sprites? I mean, obviously all the sprites are the same color, but Mario and Luigi in that screenshot look different despite being the same tiles.
Re: *NEW EMULATOR* NES Emulator for PC8801
by on (#109467)
Sik wrote:
Weird it doesn't try to center it instead =S

He mentioned that this is possible, but the positions of the sprites have to be moved accordingly as well. So this is not implemented ATM (due to laziness I suppose).

Quote:
That said, does anybody know what logic is it using to determine the color of the sprites? I mean, obviously all the sprites are the same color, but Mario and Luigi in that screenshot look different despite being the same tiles.

There are three colour planes (R, G and B, each 1 bpp, so there are a total of 8 colours) for the 88. The emulator uses planes R and G for the background, and plane B for drawing the sprites on. The sprites are fixed at white (I'm not sure, but I think each plane can actually set to display whatever colour you want, so the RGB are just names of the planes and it's not mandatory for each plane to be coloured the same as its name). I suppose the emulator assigns white or black pixels to a sprite depending on the colour value of the original pixels, so darker colours become black and lighter ones become white. Maybe it considers the red colour used in Mario darker than the green used in Luigi, so the Mario sprite has black pixels on it (or the opposite? as I couldn't tell which character is Mario and which is Luigi).

Also, only horizontal flipping for sprites is implemented (by using LUT if I'm not mistaken). Vertical flipping is not implemented.

[s]Correction on Hamtaro's original info: The emulator supports only 16kb prg and 8kb chr.[/s]

Edit as I forgot to mention it originally:
Dwedit wrote:
Almost reminds me of the NES emulator for GBC.

That emulator was actually coded by the same person.