Author Topic: Gemei A330 MAME4ALL on its way!  (Read 50860 times)

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Gemei A330 MAME4ALL on its way!
« on: November 13, 2016, 02:52:15 am »
I have an initial version of Mame4all running on my Gemei A330.
Here are some photos.






yoshi41

  • Posts: 474
Re: Gemei A330 MAME4ALL on its way!
« Reply #1 on: November 13, 2016, 08:33:26 am »
Good news. :) And thanks for your hard work.

The GA330 is a nice piece of hardware. Can't wait to try it out.

Emulator packs and fact sheets for Wiz, Caanoo, Dingoo and Pandora.

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #2 on: November 13, 2016, 09:09:05 am »
Good news. :) And thanks for your hard work.

The GA330 is a nice piece of hardware. Can't wait to try it out.

Actually it is a nice handheld, pretty decent hardware. Similar to it's predecessor the Dingoo A320 in many ways (of course).

My only complaint would be the LCD screen, which is like the Ben Nanonote: the pixels aren't aligned so everything looks slightly "dithered".

It should be pretty quick for M68000/Z80 games as unlike the Dingoo A320, I will be able to use Cyclone and DrZ80 :)
AND... another nice feature is the easy to use hardware scaling... looking forward to getting this going too.

Also thanks go to cex and dcervi for pointing me in the right direction with some A330 toolchain/SDK questions.
« Last Edit: November 13, 2016, 09:39:34 am by slaanesh »

chevette

  • Posts: 257
Re: Gemei A330 MAME4ALL on its way!
« Reply #3 on: November 13, 2016, 06:36:15 pm »
Wow slaanesh that's a beautiful sight to see Mame4All on the Gemei A330 (never thought I'd see it!). Thanks for all your efforts on this wonderful handheld

dingooforever

  • Posts: 63
Re: Gemei A330 MAME4ALL on its way!
« Reply #4 on: November 14, 2016, 10:30:50 am »
Well done slaanesh!

It's really great to see Mame4All run on so many different opensource devices.

dcervi

  • Posts: 67
Re: Gemei A330 MAME4ALL on its way!
« Reply #5 on: November 15, 2016, 02:19:54 pm »
Also thanks go to cex and dcervi for pointing me in the right direction with some A330 toolchain/SDK questions.

Glad to be able to help. My A330  patiently waits with a fresh new battery...


Enviat des del meu D5803 usant Tapatalk
« Last Edit: November 15, 2016, 02:22:14 pm by dcervi »

Igor Raz

  • Posts: 18
Re: Gemei A330 MAME4ALL on its way!
« Reply #6 on: November 15, 2016, 03:51:20 pm »
Awesome news, thanks a lot for keeping faith in Gemei )

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #7 on: November 16, 2016, 11:16:04 pm »
A couple things so far about the Gemei MAME4ALL port:

1). Sound is laggy. This issue has been touched on before. At lower sound sample rates, the sound seems to lag - badly. This seems to decrease at higher rates. I'm going to go with the following approach:

There are two sample rates to consider: The emulated rate and the Gemei's playing rate. For most emulators and systems, these are the same. ie. For my versions of MAME4ALL this is always the case.

To help solve the laggy issue, my workaround will be to set the Gemei's sample rate to the maximum  48Khz stereo but still allow MAME4ALL to emulate at lower sample rates (for speed reasons). The emulated sound generated by MAME4ALL will then be resized to fit the number of samples the Gemei is expecting to play (which is a pretty quick step). Obviously if MAME4ALL is set to 48Khz stereo then there won't be any need for "resizing". Complex sound chips like the ym2151, would take a lot of processing at this maximum rate which is why I prefer to emulate it at a lower rate and then re-sample it at the last output step to the Gemei.

2). The Gemei is making use of Cyclone and DrZ80 CPU cores. Great! I've tried some games that really torture MAME4ALL, Outrun is a good candidate having 2x M68000s and 1xZ80. It runs pretty well - though not stellar. I guess the issue is that the Gemei's CPU is an ARM-926 - same as the GP2X Wiz. Whilst on paper the specs seems to indicate it should be super fast, I've found it isn't. And this seems to hold true with the Gemei A330 too.

3). Extra RAM. This is probably the best advantage of the Gemei A330. Glorious extra RAM! We have much more user RAM to play with - 30MB of Heap and 8MB of program space. This was a main issue with the Dingoo A320. Lack of RAM - it only has 16MB Heap and 6MB program.
The extra RAM is good but unfortunately will still mean the Gemei version will need a number of executables to cover all the games - I'm thinking 4 or so module. The Dingoo A320 has 8 modules.

4). Hardware screen scaling! I love hardware screen scaling! In the process of getting this working. Using Rampage as the test subject as it's game resolution is 512x480. And I also like Rampage ;-)

« Last Edit: November 17, 2016, 10:57:20 pm by slaanesh »

chevette

  • Posts: 257
Re: Gemei A330 MAME4ALL on its way!
« Reply #8 on: November 17, 2016, 10:23:14 pm »
Thanks for the update slaanesh.

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Gemei A330 MAME4ALL on its way!
« Reply #9 on: November 17, 2016, 11:26:05 pm »


Rampage hardware scaling not quite right for shrinking though stretching is fine
« Last Edit: November 17, 2016, 11:27:39 pm by slaanesh »

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #10 on: November 21, 2016, 01:39:11 am »
So I was looking at the previous post's issue on the weekend and I haven't found a solution.

It's a pity as the Gemei port is in a pretty good shape otherwise.

I could use software blitters that do the re-scaling but the hardware one would be faster and do a higher quality job so it would be nice to get this issue sorted out.

The problem looks to be that the hardware blitter is only setup to do a maximum of 320x240 when using the LCD screen - TV out will probably work (though I haven't tested that).

There must be someway of setting the blitter "window" (presumably set to 320x240) to the correct size.

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #11 on: November 23, 2016, 03:39:18 am »
I've sent some code to dcervi who is going to assist with the hardware scaling to see if there is any way to fix the above issue.

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #12 on: November 28, 2016, 11:30:47 pm »
Great news!

dcervri found the problem with hardware scaling.

High resolution games, like Rampage, are now being nicely scaled by the hardware to the Gemei's screen.

Big thanks to dcervri.

A couple more things to look at and I think an initial release should be in order fairly soon.


chevette

  • Posts: 257
Re: Gemei A330 MAME4ALL on its way!
« Reply #13 on: November 28, 2016, 11:32:22 pm »
This is exciting!!!!!!! Thanks guys!!

dcervi

  • Posts: 67
Re: Gemei A330 MAME4ALL on its way!
« Reply #14 on: November 29, 2016, 10:04:50 pm »
As I said before, I'm very happy to be able to help you getting hardware scaling working. Some reverse engineering was needed to find the bug affecting bigger resolutions, but now that it's been solved, we can port other programs that may need bigger resolutions (Temper, I'm looking at you).

But first things first, I'm eagerly awaiting your first release of Mame4all. I hope we can get better Neo Geo and CPS 1-2 emulation than what it's currently available, and I'm anxious to be able to play Out Run and GNG on the Gemei.

Enviat des del meu D5803 usant Tapatalk


slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #15 on: December 09, 2016, 12:18:51 am »
Still working on this.

Sound seems to be an issue using the Multiplatform API.
It works but it's got issues.

* A low sample rate seems to generate laggy sound.
* A high sample rate reduces lag but seems to take up a lot of the machine's CPU.

Still investigating.

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #16 on: December 20, 2016, 02:01:04 am »
I've worked out the second of two sound issues - the other has the work around which seems to be satisfactory for now.

So games are now playing okay.

What is the performance like?

Well, good question really.

To be honest, it's a bit disappointing and in many cases not faster than the Dingoo A320.

* The Gemei A330 excels at games which makes use of M68000/Z80 combo.
The reason being the emulation code for these CPUs are written in assembler whereas the Dingoo A320 only has 'C' cores.
* The Dingoo A320 seems to be considerably faster when overclock to 420Mhz than the Gemei A330 can do at "MAX" overclock (whatever speed that is). I believe nominal speed is 500Mhz.

Some examples are:
Jackal - uses 2x M6809 CPUs and a YM-2151 sound chip.
I, Robot - use 1x M6809 CPU and mathbox and AY-8910 sound chip.

The Gemei A330 struggles with both of these games whereas the Dingoo A320 runs them fairly well.

So why is this?

I believe it's the ARM-926J CPU which isn't that strong. If you compare the performance of the Wiz and GP2X you will see what I mean. The GP2X, overclocked to 250Mhz compared to a Wiz overclock at 750Mhz certainly doesn't go three times faster.

There is some good news:

* Has 64MB of RAM and the OS does seem to use it.
This means that some larger games which can't work on the Dingoo A320 should work on the Gemei A330.

* Has a very nice hardware scaler - the screen looks great when upscaling or downscaling screens.

* Has triple buffering enabled by default so screen updates are smooth with no tearing.
« Last Edit: December 20, 2016, 02:07:28 am by slaanesh »

dcervi

  • Posts: 67
Re: Gemei A330 MAME4ALL on its way!
« Reply #17 on: December 20, 2016, 02:56:51 pm »
Great Slaanesh!!!

I hope it's soon ready for release.

Enviat des del meu D5803 usant Tapatalk


chevette

  • Posts: 257
Re: Gemei A330 MAME4ALL on its way!
« Reply #18 on: December 20, 2016, 03:01:11 pm »
Thanks for the update slaanesh........patiently waiting for a release.

slaanesh (OP)

  • Posts: 569
    • Slaanesh Dev
Re: Gemei A330 MAME4ALL on its way!
« Reply #19 on: December 25, 2016, 11:03:43 am »
MERRY CHRISTMAS!

I offer to all the Gemei A330 users a MAME4ALL Beta Christmas release!
This is a binary only install - source code coming with the v1.0 release.

MAME4ALL BETA for Gemei A330

Please understand it's 'beta'! This is just a test version so you have something to try during Christmas!


Important Instructions:
=================

1). All MAME4ALL ROMs must be renamed from *.zip extension to *.mz
ie. rampage.zip => rampage.mz
This is so that the Gemei A330 doesn't hang if you have more than a hundred .zip files in the one directory.

2). The MAME4ALL release has only been tested in B:\MAME4ALL (that is on an external SD card).
In theory it should work anywhere on the fileysystem, but this is where I have it.

3). It works just like the Dingoo A320 version of MAME4ALL. The keys are all the same.


Controls :

Standard in-game MAME controls:

- D-Pad: UP, DOWN, LEFT and RIGHT.
- Buttons A,B,X,Y,L,R: MAME buttons 1,2,3,4,5,6.
- Button SELECT+START: Insert credit.
- Button START: Start game.


Extended controls in game (to access menus and options)
All use the SELECT button + an additional button.
This is analagous to pressing "SHIFT" and another key on a regular keyboard.

- Buttons SELECT+L: Take snapshot.
- Buttons SELECT+R: Show FPS.     
- Buttons SELECT+Y: Pause.
- Buttons SELECT+X: Enter/Exit Volume menu.
- Buttons SELECT+B: Enter/Exit MAME menu
- D-Pad + L Shoulder pans the game (only for Video Output set to Normal and where the graphics don't fit entirely on the screen).

Also
- Buttons L+R: Exit (to Mame4All menu).
- Button B mapped to Enter
- Button X mapped to Space

Known Issues:
==========

* Exit takes a long time and the sound keeps playing.
* Some games do not start (yet).
* The FPS display is sometimes truncated.
* The sound is a little laggy.
« Last Edit: December 26, 2016, 09:45:50 am by slaanesh »