playguy
08-11-2002, 11:12 AM
Hey,
Well, I thought I'd take a moment, since someone asked, to update on the progress.
PlayGuy is almost to the point where another release could be made. However, the only real additional feature here is filters - Interpolation, 2xSaI, Super Eagle, Super 2xSaI. All filters use enhanced MMX instructions in both 16 and 24/32 bit color, though 16-bit is faster as MMX can work twice as fast on 16 bits, than 32. For processors that don't support MMX, compiled C versions have been used.
PlayGuy also now enumerates all refresh modes (where video drivers allow), and allows one to filter out non-60Hz modes (again where allowed by drivers), as the GameBoy refresh rate is 60 FPS and appears smoothest in 60Hz. When video drivers don't support this, refresh rates can probably be set manually in Window's "Display Properties". If allowed, PlayGuy will automatically set the "windowed" mode to 60Hz if not already. It will set it back to what it was when you quit.
You can now set FullScreen mode as your default window mode on startup.
A release could be made in a few days with just these enahancements, and some minor cosmetic touch-ups. Some other features for which I've created a dialog (no code yet)would allow the following....
- Snapshots (select BMP or PNG) - Recall that GIF is not an option for legal reasons - ridiculously expensive licensing fees.
- Setting Directories for Battery RAM, Save States, Snapshots
- Specifying the default GameBoy Type (auto, gb, sgb, gbc, gba). These means the value in the A register at startup, which identifies the GameBoy.
- Minimum frame skip (0-5) - if it needs to it will skip additional frames to keep up in real time, but will skip at least that many. (Nevertheless, 0 should still work as it will automatically increament the frame skip as it gets behind, but will decrement after several successful frames.)
- Show FPS - not sure where to put it yet - options are - screen corner, titlebar, or a status bar (might be nice to have). Though would be written to screen in FullScreen mode.
- Use MMX - if you want you could manually deselect this option - why would you? but you could - perhaps it could allow someone to select it if autodection fails? Why would it fail?
After these features are released, I'll likely work on SGB boarders and palettes. Then probably work on compatibility issues, which I have not worked on for some time.
Eventually I'll see what I can do to add NetLink support. But like I've said it will mean a major restructuring of code to which I'm not looking forward.
I doubt I'll add a desembler or debugger to PlayGuy, but who knows? My goal with PlayGuy is to keep it simple enough for newbies to use, flexible enough for power users, but with a kick-ass emulation experience for either.
I would like to hear your comments. Release in the next coming week OR keep working (on the dialog feature set)? What features am I forgetting here? Any features no-one has mentioned yet?
JC
Well, I thought I'd take a moment, since someone asked, to update on the progress.
PlayGuy is almost to the point where another release could be made. However, the only real additional feature here is filters - Interpolation, 2xSaI, Super Eagle, Super 2xSaI. All filters use enhanced MMX instructions in both 16 and 24/32 bit color, though 16-bit is faster as MMX can work twice as fast on 16 bits, than 32. For processors that don't support MMX, compiled C versions have been used.
PlayGuy also now enumerates all refresh modes (where video drivers allow), and allows one to filter out non-60Hz modes (again where allowed by drivers), as the GameBoy refresh rate is 60 FPS and appears smoothest in 60Hz. When video drivers don't support this, refresh rates can probably be set manually in Window's "Display Properties". If allowed, PlayGuy will automatically set the "windowed" mode to 60Hz if not already. It will set it back to what it was when you quit.
You can now set FullScreen mode as your default window mode on startup.
A release could be made in a few days with just these enahancements, and some minor cosmetic touch-ups. Some other features for which I've created a dialog (no code yet)would allow the following....
- Snapshots (select BMP or PNG) - Recall that GIF is not an option for legal reasons - ridiculously expensive licensing fees.
- Setting Directories for Battery RAM, Save States, Snapshots
- Specifying the default GameBoy Type (auto, gb, sgb, gbc, gba). These means the value in the A register at startup, which identifies the GameBoy.
- Minimum frame skip (0-5) - if it needs to it will skip additional frames to keep up in real time, but will skip at least that many. (Nevertheless, 0 should still work as it will automatically increament the frame skip as it gets behind, but will decrement after several successful frames.)
- Show FPS - not sure where to put it yet - options are - screen corner, titlebar, or a status bar (might be nice to have). Though would be written to screen in FullScreen mode.
- Use MMX - if you want you could manually deselect this option - why would you? but you could - perhaps it could allow someone to select it if autodection fails? Why would it fail?
After these features are released, I'll likely work on SGB boarders and palettes. Then probably work on compatibility issues, which I have not worked on for some time.
Eventually I'll see what I can do to add NetLink support. But like I've said it will mean a major restructuring of code to which I'm not looking forward.
I doubt I'll add a desembler or debugger to PlayGuy, but who knows? My goal with PlayGuy is to keep it simple enough for newbies to use, flexible enough for power users, but with a kick-ass emulation experience for either.
I would like to hear your comments. Release in the next coming week OR keep working (on the dialog feature set)? What features am I forgetting here? Any features no-one has mentioned yet?
JC