What's new

PC-Engine

AamirM

New member
Thanks, that worked. Sounds nice. I noticed some cutting-off but I am not sure if its SDL or the PSG/filter.
 

Aladar

New member
This probably happens because my emulator requires a lot of processing power.
Look the statistics in 'stdout.txt' for the lost buffers(empty audio buffers).
I have a poor system(WinXP SP3 + AMD Sempron LE-1150 + AMD 690G) but IF I close
the other programs, remove all the USB peripherals(especially the modem) and disable
the power saving program of the CPU, I lose only one(physiological) or few buffers.
The filter that uses the BLEP synthesis is not yet optimized and the coefficents of
the FIR filter are temporary.
The PSG emulation is preliminary but, excluding the LFO, is at the same (low) level
of other emulators.
 

Aladar

New member
PicchioEngine v0.0.3 (2009/02/01)
- The colors of the composite output are accurately reproduced(patent US 5389949).
- Added fullscreen mode.
- Now the emulator accept some optional arguments from the CLI.
- Automatic selection of the PC Engine/TurboGrafx 16 emulation based on the file name.
- Added support for the rom image files with header.
 

AamirM

New member
Some nice updates there. Keep up the good work ;) . Btw, does any game shows any screen yet?

I just restarted work on my emu yesterday but its mostly frontend stuff. I am taking CDROM emulation too lightly I think :) .
 

Aladar

New member
PicchioEngine v0.0.4 (2009/02/17)
- Added a temporary and not accurate(only line-based) VDC emulation.
Note: Only added to test other parts, in future a complete rewriting is necessary.
- Added support for the rom image files of 384kB.
- Preliminary and limited support for joysticks.
- Now some games are playable.
 
OP
E

Exophase

Emulator Developer
PicchioEngine v0.0.4 (2009/02/17)
- Added a temporary and not accurate(only line-based) VDC emulation.
Note: Only added to test other parts, in future a complete rewriting is necessary.
- Added support for the rom image files of 384kB.
- Preliminary and limited support for joysticks.
- Now some games are playable.

Just to make things clear, what are you missing in a line based renderer? Scroll values are latched per line, sprite values are effectively latched per frame. You can edit VRAM mid-line but I'm not sure if anything is preventing you from getting in the way of VRAM which is actively being used to draw the scanline - I'm sure you can modify it but the question is how far in advance you need to be. You can modify the palette mid-line too but there are artifacts with doing this.

Of course, no game actually relies on any of this, never really understood the preoccupation these days with accuracy that nothing relies on.
 

Aladar

New member
PicchioEngine v0.0.5 (2009/03/02)
- Added a option to show/hide the video overscan.
- Added support for the cards Populous and Street Fighter II' CE.
- Resolved the problem of the missing sprites in some games.

Of course, no game actually relies on any of this, never really understood the preoccupation these days with accuracy that nothing relies on.

I think that an extremely accurate emulator is necessary to preserve the hardware and not only the playbility of the games.
Moreover, the accurate emulator can be used as base for a fast and less accurate fine tuned version.
 
OP
E

Exophase

Emulator Developer
I think that an extremely accurate emulator is necessary to preserve the hardware and not only the playbility of the games.

Which serves no pragmatic purpose whatsoever, so I'll never really understand why so many emulator authors these days are so preoccupied with it (although in reality most actually don't bother implementing things nothing uses)

I think actually it's more a way for people to make their emulators feel more meaningful when the platform has already been emulated a lot.
 
H

h4tred

Guest
Exactly Exophase. I too don't really see the point with the preoccupation with pure per cycle accuracy. I see the point in accuracy to a degree, but I don't see going entirely overboard to the point where it requires a Core 2 Duo to even run.....
 

Aladar

New member
PicchioEngine v0.0.6 (2009/06/23)
- The configuration is now handled through a file(PicchioEngine.cfg).
- Removed the possibility to insert optional arguments from the CLI.
Note: Not a definitive choice.
- More verbose output.
- Complete support for joysticks.
- The input assignments are now redefinable.
 

Aladar

New member
PicchioEngine v0.0.7 (2009/08/04)
- The range of the audio buffer size is now 1~3072 samples.
- Corrected a bug in the PSG code that affect the starting phase of the waveform generators.
- Separated the emulation of the two low-pass RC filters(DUO-R) from the BLEP audio synthesis.
- The high-pass RC filter(DUO-R) now use floating point numbers instead of integers.
- Optimized version of the BLEP synthesis for processors that support the SSE2 instruction set.
 

sathya

New member
I compared the Street Fighter 2 Champion Edition joypad routine with the one from HuDK. One of the most interesting thing is that SF2 performs an extra joyport read after reading the 5 joypad states in order to check if a Multitap (PI-PD003) is there. If the returned value is $F0, we have a Multitap.

Is there a way to detect how many joypads are plugged? What about the other multitaps?

Hopefully a Twin Tap and a Twin Commander magically landed on my desk for some time (thanks Adoru).

Let?s start with the Twin Tap. It?s a 2 ports multitap. Unfortunately there?s no way to detect available joypads or a 2 ports multitap.

Anyway! This multitap has some interesting peculiarity. If you check the you?ll see that there?s not 2 but 3 ports and a 3 positions selector switch. Why is there a third connector and a selector switch? I?m afraid we?ll never know.

The selector switch changes the joypads order. This means that the joypads plugged in the Twin Tap will appeared at a different position in the joypad read routine. Here?s a table with the switch positions and the joypad ?positions?.
 

Top