Freeplaytech Forum
NeoGPC v1.1.0 - (11/9/2013) - Printable Version

+- Freeplaytech Forum (http://forum.freeplaytech.com)
+-- Forum: Neo Geo Pocket (http://forum.freeplaytech.com/forum-1.html)
+--- Forum: Software Development (http://forum.freeplaytech.com/forum-4.html)
+--- Thread: NeoGPC v1.1.0 - (11/9/2013) (/thread-87.html)

Pages: 1 2 3 4 5 6 7 8


NeoGPC v1.1.0 - (11/9/2013) - Cthulhu32 - 10-30-2012

Alright, so I mentioned to Flavor in a email earlier that I wanted to work on a NGPC emulator. I'm going to use this thread to post updates, have discussions about this emulator and use this as an open forum for what people would like to see in an NGPC emulator. So without further ado...

====================================================
NeoGPC - NeoGeo Pocket Color emulator
Current Version : Release 1.1.0
Latest Release : 11/9/2013
Previous Version : 1/13/2013

Download link: https://code.google.com/p/neogpc/downloads/detail?name=NeoGPC_1.1.zip

Source link: http://code.google.com/p/neogpc/source/checkout

! IMPORTANT ! NeoGPC requires DirectX to be installed, please go here (http://www.microsoft.com/en-us/download/confirmation.aspx?id=35) if the executable will not start due to missing dx files.
====================================================

Release Notes ( 1.1.0 - 11/09/2013) :
- TLCS900h debugger is mostly done! I still need to get step over and possibly step out working, and I need to fix some annoying bugs.
- Ignore the messy fonts and layouts, I just wanted to get some functionality out before I did fit-and-finish.

Release Notes ( 1.0.0 - 01/13/2013) :
- First release! Still have more to fix, but this version works. There are still many bugs to fix, and many things I want to get done. But I needed to get the first version out and here it is.

Release Notes ( Test 3 - 11/20/2012) :
- Fixed graphical display, started finishing up what the menus are going to look like.
- Fixed DAC buffers, starting to reverse engineer the bios.

Release Notes ( Test 2 - 11/05/2012) :
- More progress, showing the working Flash code updated from Flavor. I still have not incorporated Koyote.bin as I don't quite understand what it is yet, but I will go for full bios emulation after I get a flash cart and some time to disassemble.
- Fixed cancel button crashing, one-pixel off the bottom of the texture, and the fixed scratchy audio (sounds smooth like butter now). There are several menu items that do not work, and Load Rom still grays out after a single rom. But this is closer to what I want the Release Candidate 1 to look like.

Release Notes ( Test 1 - 10/29/2012) :
- Too early to make this anything fancy, but I thought I'd post a WIP showing off what I've done so far. Once you load a rom (NGC only for now), the menu greys out Load Rom.
- This is a port of RACE to DirectX9 for now. If Flavor or Judge want me to keep the RACE name (possibly RaceX) I can do that. I'm just using NeoGPC as a working title.
- Until I get a Flashmasta, this will purely be functional releases. I'm hoping to order one at the end of November, then I can start working (hopefully with mic_ and flavor) on getting the emulation much more accurate.

Requirements:
- DirectX v9.0
- Windows XP/Vista/7/8

To do (11/09/2013):
- Finish tlcs900h debugger functionality
- Z80 debugger
- Sprite/Background VRAM viewer
- Memory editor
- Proper BIOS emulation!! (still)
- Research cheat manager

To do (01/13/2013):
- Full implementation of all features
- Visual debugger
- Proper BIOS emulation!!

To do (11/20/2012) :
- Config file
- Joystick config dialog
- Video modification (full-screen vs. scale)
- Finalize for RC1

To do (11/05/2012) :
- Full win32 gui including joystick config
- Save states
- Implement menus, debate initial RC with Bios

To do (10/29/2012) :
- Fix the scratchy audio!
- Enable flash saving again, code is there I just disabled file writes
- Full win32 gui including joystick config
- Save states (same as Flash)


RE: NeoGPC (working title..) - Flavor - 10-30-2012

This is great. I like that we have a thread here for this.

One thing I want to make sure we discuss at some point is updating the flash code. If I recall correctly, I wrote some better flash memory emulation code that never actually made it into the RACE source base. This would be good for you to include. One of the things it did was help get the emulator to run the BIOS code (like if you start the NGPC without a cartridge). I don't think it got it fully running, but it helped. Anyway, it was a while ago, and what I do remember was working on it. I should have some info somewhere about it when you get further along.


RE: NeoGPC (working title..) - mic_ - 10-30-2012

Nice.

Some quick findings:

The polygon(s) you're displaying the NGPC screen on doesn't cover the entire window. I can still see some of the startup screen at the bottom.

Pressing "Cancel" at the Load ROM dialog makes the emulator crash (XP 32-bit).



RE: NeoGPC (working title..) - Morden - 10-30-2012

(10-30-2012, 06:42 AM)mic_ Wrote: Pressing "Cancel" at the Load ROM dialog makes the emulator crash (XP 32-bit).

I can confirm this as well. I was running Process Lasso, and the emulator started eating up CPU time like crazy.


RE: NeoGPC (working title..) - Cthulhu32 - 10-31-2012

Flavor - Yeah I think I'm going to add the RACE flash code in tonight. If you find the documentation on how you were able to make it more accurate I'd definitely like to see that. I'm going to disassemble the bios at some point here as well and give it a thorough examination.

Mic_ and Morden - Fixed the cancel issue. I'm going to rework all the Win32 stuff, so expect the current layout to be changed completely.

Morden: What are your system specs? I'm running a pretty high-end laptop and it hits about 8% cpu max, so I wouldn't be surprised if it eats up some resources.

I'm going to keep chugging away at this thing, gotta get rid of the crackle in the sound, get the flash fixed to where it needs to be. Once I get it to a release candidate state, I can put the code up on google code or something so other people can contribute.


RE: NeoGPC (working title..) - Flavor - 11-06-2012

Cthulhu32 - I just emailed you some info about the mods I made to the flash emulation.


RE: NeoGPC (working title..) - Morden - 11-06-2012

(10-31-2012, 08:29 AM)Cthulhu32 Wrote: Morden: What are your system specs? I'm running a pretty high-end laptop and it hits about 8% cpu max, so I wouldn't be surprised if it eats up some resources.

Win XP, AMD Athlon 64 3400+, 2 gigs of RAM, integrated ATI Radeon Xpress 200 ever since my GeForce died, and I haven't bothered to get anything to replace it. That's one rusty old can by today's standards.


RE: NeoGPC (Latest 11-5-2012) - Cthulhu32 - 11-06-2012

Its good to get a whole spectrum of test machines for this Morden. I think as long as the machine is capable of running DirectX 9, it should be fine running the first release candidate of NeoGPC.

I went ahead and released an updated Test 2 of the NeoGPC emulator. I found the scratchy audio issue, added back in the flash reading/writing and added Flavor's code changes for reading from the Flash when the chip is in flash read-mode. I still need to investigate exactly what Koyote.bin is before I add that in, but I believe its a memory dump immediately after a boot. That means the bios has executed all of its routines and the rom has just loaded, giving us a fresh RAM post-bios. If someone could confirm this that would be mucho appreciated.

I'm gunning for a December release of the first alpha. This will essentially do everything RACE/NeoPop does, but in a nice external way so it should be easy to port. The sound code is still a bit tricky, but I managed to pull all Win32/SDL dependencies out of the core and cpus. I'll keep on trucking, and I can always use some moral support Smile


RE: NeoGPC (Latest 11-5-2012) - Loïc - 11-09-2012

Hi Cthulhu32,
I've tried NeoGPC and here's what I've noticed (11-05-2012) :

when idle, cpu usage is about 8%, and it's about the same when a rom is loaded and playing.
When I use ctrl-alt-del, cpu usage increases to 25% and the emu won't do anything more than displaying a blank screen.

I'm on a lenovo thinkpad T410, under Windows Seven.

About rom compatibility, there's no sound with shufflepuck(pd) (only Ngpocket, the commercial emulator was ok with sound).
Barbarian(pd) won't start, only black screen.
And NeoGPC crashes when loading joust(pd).

Could you also modify rom selection, so it can show .ngp files ?

It's still nice to see people working on good old ngp emulation.


RE: NeoGPC (Latest 11-5-2012) - Cthulhu32 - 11-09-2012

(11-09-2012, 12:20 AM)Loïc Wrote: Hi Cthulhu32,
I've tried NeoGPC and here's what I've noticed (11-05-2012) :

when idle, cpu usage is about 8%, and it's about the same when a rom is loaded and playing.
When I use ctrl-alt-del, cpu usage increases to 25% and the emu won't do anything more than displaying a blank screen.

I'm on a lenovo thinkpad T410, under Windows Seven.

About rom compatibility, there's no sound with shufflepuck(pd) (only Ngpocket, the commercial emulator was ok with sound).
Barbarian(pd) won't start, only black screen.
And NeoGPC crashes when loading joust(pd).

Could you also modify rom selection, so it can show .ngp files ?

It's still nice to see people working on good old ngp emulation.

Huh, Barbarian was totally working on an earlier build. I haven't reached the stage of rom compatibility yet but that will definitely be high on my list Smile Yeah the timing is not correct when the window loses focus. Basically my resting timer does not compensate properly if the update takes a ridiculous amount of time but that is on my to-do behind the scenes fix. As for .ngp files, I actually have to modify the fake bios slightly when loading a NGP file. Will definitely be in the release candidate.

I'm having a lot of fun just learning the NGPC system and toying around with the various part of it. Once I have a nice graphical debugger in place, I will hopefully get all the bugs out of the emulation and finally have a full support commercial-free emulator.