OESF Portables Forum
Everything Else => Sharp Zaurus => Model Specific Forums => Distros, Development, and Model Specific Forums => Archived Forums => C1000/3x00 General discussions => Topic started by: Dromede on October 22, 2012, 09:36:30 am
-
ZGrom is a gaming oriented distribution for Sharp Zaurus C1000/C3x00 devices.
It's a console based distribution built around the Gmenu2X SDL GUI.
ZGrom has a wide selection of quality emulators, game engines and apps.
More information and downloads can be found on the ZGrom project site:
http://code.google.com/p/zgrom/ (http://code.google.com/p/zgrom/)
-
Nice work!
-
Just installed this in my SL-C1000. Very good job!
-
What a pleasant surprise. I just found this post, promptly went to your site, and I couldn't believe it. We can run GP2X binaries now? So how is the MAME4All emulator running? I'll be installing this soon. Thank you for your efforts!
-
What a pleasant surprise. I just found this post, promptly went to your site, and I couldn't believe it. We can run GP2X binaries now? So how is the MAME4All emulator running? I'll be installing this soon. Thank you for your efforts!
Yes, you can run GP2X binaries with GINGE. However, not all of them will work. Unfortunately, MAME4ALL runs a bit slow. It works quite well if you disable sound.
-
Yes, you can run GP2X binaries with GINGE. However, not all of them will work. Unfortunately, MAME4ALL runs a bit slow. It works quite well if you disable sound.
I'll install Zgrom this weekend. Can't wait for it. The fact that Mame is useable at all is great, as, so far, there wasn't a useable Mame for the Akita.
Is there any chance to run Amstrad games in Zgrom through the CapriceGP2X emulator? That was my first computer.
-
Yes, you can run GP2X binaries with GINGE. However, not all of them will work. Unfortunately, MAME4ALL runs a bit slow. It works quite well if you disable sound.
I'll install Zgrom this weekend. Can't wait for it. The fact that Mame is useable at all is great, as, so far, there wasn't a useable Mame for the Akita.
Is there any chance to run Amstrad games in Zgrom through the CapriceGP2X emulator? That was my first computer.
I never tried running CapriceGP2X before. I tried it just now and it seems to work. There's just one important thing you have to do before you run it:
echo 0 > /proc/cpu/alignment
Certain GP2X binaries will cause a lot of alignment faults that can slow your system to a crawl if they are not ignored. On the GP2X, alignment faults are ignored by default. The above line will do the same on your Z.
MAME4ALL would be a lot faster if it were a native Zaurus port. Probably close to full speed.
-
I never tried running CapriceGP2X before. I tried it just now and it seems to work. There's just one important thing you have to do before you run it:
echo 0 > /proc/cpu/alignment
Certain GP2X binaries will cause a lot of alignment faults that can slow your system to a crawl if they are not ignored. On the GP2X, alignment faults are ignored by default. The above line will do the same on your Z.
MAME4ALL would be a lot faster if it were a native Zaurus port. Probably close to full speed.
Thank you, that is great news! The alignment fix conflicts with anything else? And, does it hold until the next system reboot? If so, maybe adding that line in one of the initialization scripts might be a good idea, and I might just do that.
I remember a lot of discussions about MAME. There were a lot attempts to port MAME to the Zaurus and nobody was successful. Which is strange, since the architecture is nothing esoteric.
I personally am happy if your rom can run MAME games like anything up to circa 1986 with near full speed. I'm talking stuff like Galaxian, Pacman, X-Rally, etc.
-
Thank you, that is great news! The alignment fix conflicts with anything else? And, does it hold until the next system reboot? If so, maybe adding that line in one of the initialization scripts might be a good idea, and I might just do that.
I remember a lot of discussions about MAME. There were a lot attempts to port MAME to the Zaurus and nobody was successful. Which is strange, since the architecture is nothing esoteric.
I personally am happy if your rom can run MAME games like anything up to circa 1986 with near full speed. I'm talking stuff like Galaxian, Pacman, X-Rally, etc.
The kernel that comes with ZGrom will by default fix unaligned accesses and warn the user through dmesg that such an access happened. So no, the alignment fixup has to be manually turned off each time you reboot.
I suggest you write a gmenu2x launcher for caprice. You can also wrap caprice invocation in a shell script, that way you can disable alignment fixup just for caprice. Certain emulators that come with
ZGrom do just that, take a look at DrPocketSnes for example.
I have also started a native zaurus port of MAME but i have abandoned it due to a lack of motivation. There are very few people who use Zaurus machines these days and even fewer people who use ZGrom. But you should be fine with GP2X MAME that comes with ZGrom. Games that you mentioned should work fullspeed with sound.
-
The kernel that comes with ZGrom will by default fix unaligned accesses and warn the user through dmesg that such an access happened. So no, the alignment fixup has to be manually turned off each time you reboot.
I suggest you write a gmenu2x launcher for caprice. You can also wrap caprice invocation in a shell script, that way you can disable alignment fixup just for caprice. Certain emulators that come with
ZGrom do just that, take a look at DrPocketSnes for example.
I have also started a native zaurus port of MAME but i have abandoned it due to a lack of motivation. There are very few people who use Zaurus machines these days and even fewer people who use ZGrom. But you should be fine with GP2X MAME that comes with ZGrom. Games that you mentioned should work fullspeed with sound.
I tested Zgrom today and it's awesome! MAME4All works great for the older roms, something that before I couldn't do with my Zaurus.
I had some problem installing CapriceGP2X. I think I'm getting confused with the instructions at http://mtorromeo.github.com/gmenu2x/documentation/ (http://mtorromeo.github.com/gmenu2x/documentation/)
There, it says that the links for games must be made under sections/ but I see no sections/ directory in the filesystem. I saw /home/root/emulators/ for example, but I see no link files there.
Also, the instructions above mention links can be created from GMenu2X directly by pressing SELECT and then "Add Link In..." but I don't seem to be able to do this.
One thing I did notice is that the shell startup file for DrPocketNes seems to have a typo in the second echo command (it looks it should be "3" instead of "3).
-
Gmenu2x sections are in /usr/share/gmenu2x/sections. So your caprice launcher should probably be in /usr/share/gmenu2x/sections/emulators.
As for how to access the launcher menu for "add link in", please read this:
http://code.google.com/p/zgrom/wiki/Gmenu2X (http://code.google.com/p/zgrom/wiki/Gmenu2X)
In a nutshell, you can enter/exit the launcher menu with the "Menu" key on your Zaurus.
Please note that new launchers created with the "add link in" feature will not be placed in /usr/share/gmenu2x/sections/. They will be placed somewhere under $HOME/.gmenu2x/sections.
Yes, i'm aware of the DrPocketSnes typo, it will be fixed in v0.2. Thanks anyway!
-
Gmenu2x sections are in /usr/share/gmenu2x/sections. So your caprice launcher should probably be in /usr/share/gmenu2x/sections/emulators.
As for how to access the launcher menu for "add link in", please read this:
http://code.google.com/p/zgrom/wiki/Gmenu2X (http://code.google.com/p/zgrom/wiki/Gmenu2X)
In a nutshell, you can enter/exit the launcher menu with the "Menu" key on your Zaurus.
Please note that new launchers created with the "add link in" feature will not be placed in /usr/share/gmenu2x/sections/. They will be placed somewhere under $HOME/.gmenu2x/sections.
Yes, i'm aware of the DrPocketSnes typo, it will be fixed in v0.2. Thanks anyway!
Thank you for your reply. I didn't read the Gmenu2X section carefully enough.
Did you create the launchers manually, since if created via Gmenu2X they are stored in a different location?
I never used Gmenu2X with my GP2X, so I'll have to play a little with it. I'll also experiment with MAME4All scaling options (don't know if there are any), as some games are slightly cropped.
If you accept any requests, it would be awesome if version 0.2 included Caprice2X and Stella (Atari 2600 emulator). That is, if time and rom space allow.
Thanks!
-
I wrote the launchers manually.
I'm not sure if all MAME4ALL scaling options will work. I suspect some of them expect a real GP2X hardware scaler.
I will gladly include Caprice and Stella if someone would properly test them. Then again, i might take a completely
different approach and turn all the emulators into proper .ipk packages. Zgrom does come with full packaging support.
That way users can easily install/remove emulator and apps. Of course, this also implies a repository...
-
I wrote the launchers manually.
I'm not sure if all MAME4ALL scaling options will work. I suspect some of them expect a real GP2X hardware scaler.
I will gladly include Caprice and Stella if someone would properly test them. Then again, i might take a completely
different approach and turn all the emulators into proper .ipk packages. Zgrom does come with full packaging support.
That way users can easily install/remove emulator and apps. Of course, this also implies a repository...
Thank you, Dromede.
I haven't had time this past week to look at this, but should be able to next weekend. I would be very happy to test Caprice and Stella, please let me know when I can do that.
It's always good to have packaging support. As for repositories, if the package manager works with local repositories, we are good. Unfortunately history has taught me to not trust remote repositories (pdaXrom, and now even the Nokia N900).
Cheers,
TB
-
Hello Dromede,
Is it possible to add/compile kernels for C760/860 models?
I have both machines so I can test the kernels if you wish.
Thank you for your time,
Dennis
-
Hi Dromede
Am I right in thinking Zgrom uses a Z-optimized SDL build? Have you uploaded the code so that I might be able to take advantage of it under Arch or other Z distros?
Thanks
-
Hi,
Google Code is unfortunately closing down, and starting from this month it is not possible to browse the source code or download any file from any project hosted there. The only operation still allowed is an automatic export to Github. I have done a search on the whole forum and zgrom seems to be the only Z-related project hosted there.
I have seen that a first import of zgrom to Github has been already done some month ago, but unfortunately the repository contans no code:
https://github.com/static-void/zgrom (https://github.com/static-void/zgrom)
It would be a pity to lose all the source code of this nice ROM... I have now contacted the author via mail (I don't know if he still visits the forum), I hope that this will be eventually sorted out.
@danboid: This might be interesting for you too for the SDL code
Varthall
-
Greetings,
Zgrom was a long time ago. Unfortunately, i have never uploaded the source tarballs even though i meant to. And i doubt i'll find any copies on my old hard drives. I can't exactly remember if i've done any Z specific modifications to the SDL libraries. I did write iWMMXt optimised fb rotation routines that i used in Xfbdev and in most of the emulators included with ZGrom. But i think i never got them to work properly with SDL for some reason.
The framebuffer driver in ZGrom kernels was also modified. It used the internal SRAM and SDRAM for framebuffer storage. So at QVGA resolutions the entire framebuffer would fit into the internal sram. The result is a very noticeable increase in fps on most emulators. At VGA resolution, the framebuffer was split between internal SRAM and SDRAM since it wouldn't fit into internal SRAM.
-
That's bad... I hope that you'll anyway manage to find them . At least the binaries can still be downloaded from the repository, although they might disappear at any moment without notice. I have downloaded them. It might be a good idea to store them in a public file repository, if you agree that is Together maybe with other Z ROMs, so that they won't get lost.
Thanks anyway for the answer.
Varthall
-
Greetings,
Zgrom was a long time ago. Unfortunately, i have never uploaded the source tarballs even though i meant to. And i doubt i'll find any copies on my old hard drives. I can't exactly remember if i've done any Z specific modifications to the SDL libraries. I did write iWMMXt optimised fb rotation routines that i used in Xfbdev and in most of the emulators included with ZGrom. But i think i never got them to work properly with SDL for some reason.
The framebuffer driver in ZGrom kernels was also modified. It used the internal SRAM and SDRAM for framebuffer storage. So at QVGA resolutions the entire framebuffer would fit into the internal sram. The result is a very noticeable increase in fps on most emulators. At VGA resolution, the framebuffer was split between internal SRAM and SDRAM since it wouldn't fit into internal SRAM.
Dromede:
I would be very much interested in the framebuffer patches for SRAM and iWMMXt rotation. Have a look if you can find any, even if for 2.6 kernels. Thanks!
-
Hello, Does anyone possibly have a link to the pre-compiled kexecboot-kernel 3.2 for Zaurus SL-C1000, 3100 or 3200?
Thank you in advance!
-
Hello, Does anyone possibly have a link to the pre-compiled kexecboot-kernel 3.2 for Zaurus SL-C1000, 3100 or 3200?
Are you referring to these kernels?
https://web.archive.org/web/20120615193033/...ot.org/download (https://web.archive.org/web/20120615193033/http://kexecboot.org/download)
I'm also interested in those images, I have now asked on the #kexecboot channel, hopefully someone will help me, I will let you know. EDIT: no answer on the channel, unfortunately
BTW what is the difference between this version of kexecboot and the one on the Arch Linux page (https://github.com/greguu/linux-4.2.3-c3x00/releases), apart from the fact that the latter is officially only for 3x00 models?
Varthall
-
Yes, thank you much for the link and for asking on the channel. I'm sorry, I don't know what the difference is between Arch Linux version and the original compiled image. But I will try it.
I found some trouble booting Zgrom from the older kexecboot-2.6.2x which is located here. (https://github.com/LinuxPDA/linux-kexecboot/find/master)
-
I found some trouble booting Zgrom from the older kexecboot-2.6.2x which is located here. (https://github.com/LinuxPDA/linux-kexecboot/find/master)
Ah, thanks for this info, I was about to flash that same version! What was the problem with the boot?
I'll try the Arch version then, as well. BTW I have found a site with newer kexecboot versions, though again without the final 3.1 one:
http://www.penguin.cz/~utx/zaurus/feed/images/ (http://www.penguin.cz/~utx/zaurus/feed/images/)
These builds have been mentioned here, by one of the kexecboot devs:
http://logs.nslu2-linux.org/livelogs/kexec...ot.20150829.txt (http://logs.nslu2-linux.org/livelogs/kexecboot/kexecboot.20150829.txt)
The latest versions seem to be zImage-3.1.0-rc1+-spitz.bin (for the C3000) and zImage-3.1.0-rc1+-akita.bin (for the C1000), you might want to give them a try too.
Varthall
-
The Zgrom could not successfully boot with the earlier 2.6.2x image. It made a blank screen. I will check again.
Also, thank you for posting the links to other builds.
-
I have met Ant on #kexecboot, and he told me about the current situation of kexecboot (see also my post here: https://www.oesf.org/forum/index.php?s=&...t&p=282292) (https://www.oesf.org/forum/index.php?s=&showtopic=26388&view=findpost&p=282292)). He told me that, unfortunately, the 3.2 prebuilt images are lost.
This image had anyway problems on some models (poodle and especially collie).
The reason why the 2.6.xx images (and the later ones, including the 3.2 one) fail to boot zgrom is because they use the old boot.img syntax, so a newer image is required. My guess is that, when zgrom was released, a kexecboot based on a kernel newer than 3.2 was available, and that might have been required for zgrom.
Arch Linux' kexecboot is based on 3.5, so zgrom should work with it.
Varthall
-
I have met Ant on #kexecboot, and he told me about the current situation of kexecboot (see also my post here: https://www.oesf.org/forum/index.php?s=&...t&p=282292) (https://www.oesf.org/forum/index.php?s=&showtopic=26388&view=findpost&p=282292)). He told me that, unfortunately, the 3.2 prebuilt images are lost.
This image had anyway problems on some models (poodle and especially collie).
The reason why the 2.6.xx images (and the later ones, including the 3.2 one) fail to boot zgrom is because they use the old boot.img syntax, so a newer image is required. My guess is that, when zgrom was released, a kexecboot based on a kernel newer than 3.2 was available, and that might have been required for zgrom.
Arch Linux' kexecboot is based on 3.5, so zgrom should work with it.
Varthall
I see, that is good news! It is exciting to hear Ant is still working to a refreshed kernel. Thank you again for the pleasant information for kexecboot progress!
On an added note I have not tried the Arch Linux version yet but look forward to flash the image soon.
-
Just in case anyone here was wondering if OESF forums had disappearred, it has returned as you can now see.
Mark