This is what the author wrote:
[QUOTE]
It's me who is working on it.
Sorry things are a little slow at the moment. I ran into many problems while trying to port the emulator. I made some progress at one point only to have it not work anywhere else. If you are curious take a look.
www.geocities.com/dexter2600/neopop/pineapple01.jpg (copy and paste into address bar)
www.geocities.com/dexter2600/neopop/pineapple02.jpg (copy and paste into address bar)
Sadly this lead to a dead end a week ago because Symbian apps are compiled to dll which do not allow for global varibles which are heavely used in the emulator so I could only compile for pc and not the phone. The good news is I found the right answer to my problems which is doing what mame & goboy do (compile to a exe which allows for global varibles then call the exe with an app). I just recently started vacation late last week and now was able to get symbian stuff setup on my home pc. So todya I am going to start back on the project. I already wrote most of the basic code for the new interface I just have to turn it into a project and give it a test run. If all goes well I could be executing roms again in 2-3 days. Once I get there I just have to fill in the gaps for the emulator (input, savestate, battery saves, sound, ....). So it is still quite posible I will be able to have a demo out by the 1st of january.
On top of it if everything is sucessful. I will take the interface code and port over a few more emulators like genesis & sms/gamegear.
Well that was probably more then you wanted to here but thats everything.
-
Vazkor,
The goal is to have it running on the n-gage in it's native resolution which is 160x152.
the s60 phones run at 176x208.
Not sure yet what i will do with the remaining space. Probably a nice boarder. I do not care to scale up the display for the screen though because that is a waste of cpu time for only 16 pixels (maybe it might be put in as an option later but not sure).
The pictures above are from early test like I said (and pretty much has been rewriten or thrown out). The code I am working on now is full screen but I am trying to debug some problems in code execution (which is a little odd at the moment) that causes a crash.
My goal is to hopefully have that pd rom working again by tomorrow. Lets see if I make it.
-
-actualy I though about it yesterday and if things go well and time permits I am thinking 3 scale modes. 1 is native resolution, 1 even scales the extra 16 pixels. The last is to pull a sonic N and scale evently to meet the full vertical screen res. For some games this might work and function fine but some it might be a problem. Like I said though this all depends on time and how things go.
Right now though I have to fix a bug that keeps me from getting past the first op code.
-
Well I have some great news, awsome news, killer news, some bad news, some horible news & news.
so what is it all?
Well I fixed the memory problem and now the emulator is actualy fully running right in front of me. The PD rom from the last pictures is playing it self (have not got input in so it switches A button on and off)
So then what could be the bad news? Well here is a laundry list of problems.
1) I need to figure out input system. I might have this done by the end of the night.
2) Figure out how to use files on the mmc. Right now when I try opening from E it closes. so i can only test with very small PD roms I can fit into main memory.
3) It's slow. Very slow. I would have to say with no frameskip it feels like 1-10 frames a second which is bad for a system that runs at 60fps. Luckly with some optimisation this should be fixed.
If all goes to plan I might have an early test build out early next week. Don't quote me on this still because I might just wait till I can do a gui and app launcher.
well I just though I would keep you guys posted.
-
Sadly I am pretty much doing this mostly on my own. I had some help from a friend over arm data alignment but thats been about it.
most of what I have been doing is going off the emame paper & goboy src.
-
1am the programmer said "let there be input", there was input and when he saw input he said it was good.
then at 1:15am the programmer went to sit on his ass while he watched some family guy.
Hey I though i would give a small update since so many are excited about this project and i'm an attension whore.
So whats new. First off Huge speed improvement which has zero frame skip running between 15-30fps by the looks of things. I have tried changing the frameskip higher but it looks like it does not improve the emulator that much which leads me to believe the bottleneck it self is the drawing functions of symbian. Emame noted a way to fix this and I am going to take a look into it tomorrow. Posibly even hacking the emulator up to have it write directly into my frame buffer insted of me copying from it's framebuffer to my framebuffer to the display (i have no direct pixel access to the lcd).
Earlier I had a nice display problem while trying to speed things up. N-gage & Ngpc have red and blue swaped and before I would swap manualy but this was causing a 1-10fps. So I skiped the conversion which spead things up like I just mention. 5 mins ago I desided to modify the emu to swap the colors when it writes the pixel to the framebuffer which did not cause for any slowdown from what I can tell but could probably be further optmised by changing when it writes to the palettes insted of every pixel it writes.
Another big thing is input is now in and functional. What a relief this is because before the only way I could quit was to hold the power button down for a long time or to remove the battery (which was not good). So now I have input and a quit key.
For any non n-gage people out there. A friend of mine tested things out on his 3650 and everything ran perfectly fine. So compatibility should be good for other s60 phones.
wow that was a lot of technical mombo jombo. Hope nobody fell a sleep while reading it. tomorrow I will try and see if I can make some modifications to allow me to use the screenshot program to take pictures. At the moment it wont respond untill the emulator quits.
Now for all you guys out there going. "err well umm does it play games yet?" The answer is yes and no. Eh? well it seems I have a memory problem. Any time I try allocating space for 1MB or greater images it fails and just exits out. Pac man does seem to work perfectly though (it is under 1MB) and all PD roms I have tried so far work well. So theoreticaly speaking if I can fix the memory bug it should have equal compatibility with the win32 version of neopop. Yet don't exspect me to provide a compatibility list after this post (legal reasons).
Well anyways I will try to keep you guys posted on my progress tomorrow.
-
Hello all. Not much progress today so far. I tried fixing the memory allocation problem for roms greater then 1/2 MB but still no give. Have to check into a few more things. I tried to speed things up with no luck so far today. I did get the chance to put in a small modification which let me take some screenshots with the screencap program found on the n-gage. I just need to find a good place to host the 10 images I took (don't want to put on geocities due to bandwith limitations).
I hope later tonight I will have the memory problem fixed, eeprom support for saves and reading off the mmc. I'll make sure to update you guys if any status changes.
Nite_Enzo,
I understand what you mean. My goal is to get near 60fps but I dout the first build will improve much over what I have now. It's quite playable framerate for a first build but still not the best. It will take some time to improve because I need to optimise alot of the emu code for speed & find ways for faster display drawing with symbian 60 os.
-
Well there is my xmas pressent to you all. Philip posted up screenshots from my current build. Sorry they are a little assy but that is because I had the screencap program set for small size. Maybe if big improvements happen over the weekend I will try to grab a few better screens.
Happy Holidays everybody.
-
well just a small update this morning (cant sleep so nothing else to do).
No big changes in the engine so far. I have the emu reading roms from the MMC. I setup a basic file structure (root NeoPop, then battery & state folder). Flash saves are now in and seem to be working just fine. Sadly the emu does not auto save the flash state when writen to. I can easly modify it to do so just not sure at the moment. I put over everything for savestate but it does not work (I am busting my heap and I need to reduce memory usage). I will probably modify it in a few days to write in chunks insted of all at once.
That sadly is pretty much it at the moment. I tried to spend xmas relaxing and playing some games. I am hoping to have my memory problem fixed this weekend.