For the people... N64 isn's posible emulate in DC... only is a small posibility only emulate a single rom "tipe bleemcast" is more posibility but... is the same... very dificult.
Printable View
For the people... N64 isn's posible emulate in DC... only is a small posibility only emulate a single rom "tipe bleemcast" is more posibility but... is the same... very dificult.
It is not the same, you have not emulate a 100MHz CPU + 60MHz Copro with 200MHz, it is ridiculous.
Actually it could be possible.. UltraHLE used a high level interpretor to speed up emulation and as far as i remember most games ran fine on my K6-200 with VoodooI back then..
well, ULTRAHLE used dynamic recompilation of the program code, and since dynamic recompilation most often also requires the native code to be present since the recompiler often does not know what is code and what is data, alot of RAM is needed to keep both native code and recompiled code in memory.
GREAT work chui and fox68k on this progress! so how do you generate these prefetch maps? do you play through the games with some sort of logger that dumps rom access information which is then mapped into usage on a level by level basis? sounds intriguing either way, very ingenious of you guys!
@xor: this is of course right.. same problem with the average n64-rom-size also.. but as chui is working on the memory-problem this could be solved someday.. =)
btw: excellent work guys (same for neo4all, uae4all and dcastaway of course.. especially dcastaway is THE bomb! it even runs most of the scene-demos i tried at 100% speed.. btw: have you received my memorycard-save-bug-report (neo4all), chui? would be SO cool if you could fix that, pleeeeeease.. ;)
For mapping, i have compiled a special NEO4ALL/AES with #define AES_PREFETCHING flag; after play with this special NEO4ALL/AES and when cache is full, exit dumping map throw BBA (64KBytes).
If you include this dump prefetch to my rom converter program, it generate a file with rom game, rom bios and prefetch for playing with real emulator.
Actually, i am mapping Metal Slug X and i have can play with special NEO4ALL/AES until middle second stage with 10MB cache. But now i have not time for testing it in real emulator, i hope play this night play normaly. :D
I would like build a little database with the 298 games supported, logically i will need help of beta-testers for trying and dumping maps.
I did not receive any report about save to memory card, please send me it to [email protected]. I need a good explain of the problem, with a game example.Quote:
Originally Posted by toxie
Also i have to solve long-time SDL bug (freeze after 84 minutes).
I've mailed you the report again..
And that SDL bug is also very weird (at least i know now that it's a bug in Neo4All.. I always thought my good ol' DC was screwing up after some time.. =)
I don't know the DC-SDL-Implementation, but could it be some kind of timer-overflow or something?!
Thanks, i caught it!Quote:
Originally Posted by toxie
Yes, i think that it is a overflow between 64bit of KOS time function and 32bit SDL_GetTicks overflow, i had tried to fix but not work yet.Quote:
Originally Posted by toxie
I do not think so mate. I guess it is an overflow on your own. I try to explain you my thoughts next:Quote:
Originally Posted by chui
You said somewhere the emulators crash after 84 mins. Making some good use of basic math ops, i found this:
* 84 mins * 60 segs/1min * 1000msecs/1seg = 5 040 000 msecs
* 84 mins * 60 segs/1min * 1000msecs/1seg * 1000usecs/1msec = 5 040 000 000 usecs
You are probably asking yourself why i put two equations instead of one? Got it? If the way remains dark still, go ahead with this:
The lastest calculated value is somewhat familiar. It is a bit higher than the maximum allowed value for 32-bit unsigned integers. I guess the value returned by SDL_GetTicks is a 32-bit unsigned integer and it returns time in milliseconds, right? If so, let me do some maths more (i love maths =P) to calculate the time required to wrap:
* 2^32 msecs * 1sec/1000msecs * 1min/60segs * 1hour/60mins * 1day/24 hours = roughly 49 days.
* 2^32 usecs * 1msec/1000usecs * 1sec/1000msecs * 1min/60segs = roughly 70 mins.
Interesting. Not yet? Then, think about the time unit used by the KOS function and the one you return from your implementation.
Greetings.