Closed GoogleCodeExporter closed 9 years ago
As for the uint32 != unsigned int, it seems that the GCC compiler is unable to
recognize these as the same type in function definitions even though they are
the same underlying type through a typedef. It is in any case unclean to use
two different definitions. For portability reasons as well; some platforms
define ints to 16-bit, maybe 64-bit some time in the future.
Original comment by airmake...@gmail.com
on 30 Dec 2010 at 2:20
1) uint32 is defined as unsigned int (not long) somewhere else, check better
(types.h i think)
2) cycle counter initialization is not a bug and shouldn't have anything to do
with ROM loading speed, you must be doing something wrong in your platform
dependent code. The random value is there because CPUs (m68k & z80) don't start
in sync with the VDP. Those 2 variables represent the position of both CPU
regarding the VDP (mcycles_vdp) and are only used to run emulation, not when
loading a new game.
PS: i looked at you porting code, and you must know that the framerate values i
use are specific for gc/wii, they have been measured on this hardware and
should be adapted to PS3 real framerate, if this is required...
Original comment by ekeeke31@gmail.com
on 30 Dec 2010 at 4:31
Regarding function definitions in gen_input.h, you are right though, it's a
left over when every function handlers were using uint32 at some point of
development and i forgot to change some header files. This will be fixed.
However, i'm using gcc as well and never had any problem or warning with this.
uint32 is defined as unsigned int in types.h and this file is included by every
other files.
Original comment by ekeeke31@gmail.com
on 30 Dec 2010 at 5:38
Thanks for the response.
Just a few clarifying notes - I think I might have gotten to the root of the
problem. The 'types.h' we used was from a very old revision that for some
reason didn't get updated -
https://code.google.com/p/genplus-gx/source/browse/trunk/source/types.h?r=184
I will check if there are still some parts in the current GX PS3 trunk that are
similarly out-of-date, and update them accordingly. Just so you know - I had to
apply manual diff patches to arrive from one current codebase - which was left
at r427 - to the most recent one for two reasons -
1) Genesis Plus GX PS3 is a fork of a codebase that didn't have a public repo
(although I could start from scratch at this point).
2) We had to isolate this slow ROM loading bug that occurred when using the
latest trunk as the codebase for the port - that's one reason why we couldn't
use the lates trunk straight away - as we knew it worked flawlessly at one
point and didn't from a certain point on (r496).
I will go over the main porting code some more (GenesisPlus.cpp) and try to
isolate what could be the problem other than this line in genesis.c. Most of
the code is just a straight port at this point - every game bar Virtua Racing
works at the moment - some more work is definitely required before it will have
the same featureset as the Wii version at the moment.
Original comment by danieldematteis@gmail.com
on 30 Dec 2010 at 8:32
Original issue reported on code.google.com by
danieldematteis@gmail.com
on 30 Dec 2010 at 2:12