GCW Zero - Open Source Gaming Handheld


I'm not interested in getting this device (unless it has absolutely 100% no nonfree software, e.g. firmware... if it does, do tell me), but I'm definitely interested in targeting it for development.


Question: is Python included with it, or would I need to do something like cx_Freeze to get Python programs working on people's GCW Zeros? And if Python is there, how about Pygame?


Another question: any documentation on how programs normally access the controls? Keyboard mapping, or gamepad controls?


Anyone port The Ur-Quan Masters yet? I might try my hand at it if not. :)
 
Last edited by a moderator:
Python is working/included on the device. The hardware test and clock are python apps. As for pygame I do not know. No one has ported Ur-Quan Masters yet
 
Last edited by a moderator:
I'm not interested in getting this device (unless it has absolutely 100% no nonfree software, e.g. firmware... if it does, do tell me), but I'm definitely interested in targeting it for development.
The device is completely FOSS minus two details:


* GPU driver is binary only - we don't have the source code for it and we can't help much here. This driver is responsible only for gpu acceleration (gles), there is a separate driver that handles framebuffer video and that is fully opensource. You can always resort to not using the GPU acceleration at all if you're not ok with binary blobs.


* the wifi driver we currently use is opensource in the kernel, but contains a binary for the wifi chip CPU. There is also an alternative driver, which I think is fully opensource, but we had stability problems with it.


Now, our devteam agreed to join GCW developement and port a GNU/Linux system only because we are allowed to make it 100% FOSS. All the things we have written - bootloader, kernel drivers, userland applications - are available on GPL or compatible licenses. We are very sensitive to GPL violations and will not tolerate any 3rd party emulator/game/application ports that are derived from opensource code and break it's license.


That said, we have nothing against genuine closed-source games. We already have a couple of them ported - Sqrxz3, Giana's Return and UMG.


I am saying this all so you guys know we're not yet another chinese linux based handheld with the mentality of "what we took from you is now ours and we won't share it anymore".


Most of our work is already available on git: https://github.com/gcwnow


Some less important stuff is also scattered on personal github accounts of the developers

Another question: any documentation on how programs normally access the controls? Keyboard mapping, or gamepad controls?
Button mapping is done with keyboard events. The key mappings are the same as in Dingoo A320, with the exception of x and Y mappings being swapped.


Analog joystick is a standard joystick interface (joy0).

Anyone port The Ur-Quan Masters yet? I might try my hand at it if not. :)
Not yet, but I have it on my to-do list. If you are interested in porting it, please stay in contact with us (our IRC channel is #gcw on freenode.org). As I already mentioned in some previous post, we are very sensitive to quality of game ports, and since you might not be getting a GCW0, I'd like to be sure your port has our seal of quality :)
 
Last edited by a moderator:
The device is completely FOSS minus two details:


* GPU driver is binary only - we don't have the source code for it and we can't help much here. This driver is responsible only for gpu acceleration (gles), there is a separate driver that handles framebuffer video and that is fully opensource. You can always resort to not using the GPU acceleration at all if you're not ok with binary blobs.


* the wifi driver we currently use is opensource in the kernel, but contains a binary for the wifi chip CPU. There is also an alternative driver, which I think is fully opensource, but we had stability problems with it.

So, about the same as the Pandora (though the Pandora also has nonfree firmware in its nubs... does the GCW Zero have that problem?)


Two questions:


- Any chance of a completely free version of the OS being offered (so, no GPU acceleration and no WiFi)? I don't have enough knowledge to do this myself, so if this is offered for the GCW Zero and no one gets a completely free OS working on the Pandora, this would be a plus for me.


- If an OS which doesn't support the internal WiFi is used, how hard would it be to use a WiFi dongle that works without nonfree software?

Anyone port The Ur-Quan Masters yet? I might try my hand at it if not. :)
Not yet, but I have it on my to-do list. If you are interested in porting it, please stay in contact with us (our IRC channel is #gcw on freenode.org). As I already mentioned in some previous post, we are very sensitive to quality of game ports, and since you might not be getting a GCW0, I'd like to be sure your port has our seal of quality :)

Heh, no need to worry, I'm a nitpick when it comes to details. That's partly why I wanted to make sure I was responsible for the port on the Pandora; I wanted to make sure I could make it just right.
 
So, about the same as the Pandora (though the Pandora also has nonfree firmware in its nubs... does the GCW Zero have that problem?)

Our analog stick doesn't contain any firmware: its analog outputs are connected directly to an A/D converter in the JZ4770 SoC and that ADC is read by the driver in the kernel.

Any chance of a completely free version of the OS being offered (so, no GPU acceleration and no WiFi)? I don't have enough knowledge to do this myself, so if this is offered for the GCW Zero and no one gets a completely free OS working on the Pandora, this would be a plus for me.

The proprietary bits are all in the kernel, so it would just be a matter of building a kernel without those bits enabled. Such a kernel is usable; of course OpenGL ES and WiFi wouldn't work, but you can still run applications that use the framebuffer and use ethernet-over-USB for networking. Whether we'll release a pre-built binary of the fully open kernel depends on the demand. Building such a kernel yourself is really not all that difficult (it's about 5 steps); we'd be happy to teach you.

If an OS which doesn't support the internal WiFi is used, how hard would it be to use a WiFi dongle that works without nonfree software?

It requires the USB OTG (on-the-go) to work; this is not implemented yet but the hardware should be capable of it. Of course you need a WiFi dongle for which a good Linux driver exists and that doesn't require non-free firmware to be uploaded. It also requires a driver for that dongle to be included in the kernel.


I have some doubts about whether this will actually make you more free though: I am not aware of any WiFi dongle that operates on free firmware. So the only thing you'll be able to get is a WiFi dongle in which the proprietary firmware is built into ROM instead of uploaded. Is that really an improvement over uploading the proprietary firmware into the RAM of the WiFi board?
 
Building such a kernel yourself is really not all that difficult (it's about 5 steps); we'd be happy to teach you.

Well, that's good to hear, but I'd be more interested in doing that for the Pandora I already have, what with the Zero not having any major advantages over it that I know of (being able to easily filter out nonfree software from whatever official software sources would be an advantage, but I tend to assume that's not going to be there in a device like this). Thanks for the offer, though.

I have some doubts about whether this will actually make you more free though: I am not aware of any WiFi dongle that operates on free firmware. So the only thing you'll be able to get is a WiFi dongle in which the proprietary firmware is built into ROM instead of uploaded. Is that really an improvement over uploading the proprietary firmware into the RAM of the WiFi board?

The FSF's position is briefly discussed in this article (I can't find anything that goes more in-depth):


http://www.fsf.org/c.../free-bios.html


The idea is that if the software is burned into a ROM, it might as well be treated as a circuit since the hardware itself prevents you from changing it, and this also prevents the software from automatically upgrading itself, which is a potential security concern. Because of this, things like the Pandora's nubs (which I mostly care about because the nub firmware sucks) or the firmware inside of a USB WiFi dongle aren't as much of a concern.
 
Last edited by a moderator:
Well, that's good to hear, but I'd be more interested in doing that for the Pandora I already have, what with the Zero not having any major advantages over it that I know of (being able to easily filter out nonfree software from whatever official software sources would be an advantage, but I tend to assume that's not going to be there in a device like this). Thanks for the offer, though.

The main advantage of the Zero is that it is much cheaper than the Pandora. If you already own a Pandora, there isn't much you'd gain from buying a Zero as well.

The FSF's position is briefly discussed in this article (I can't find anything that goes more in-depth):

http://www.fsf.org/c.../free-bios.html

The BIOS is executed by the main CPU though, it's not the same situation as uploaded firmware that is executed by an external microcontroller.

The idea is that if the software is burned into a ROM, it might as well be treated as a circuit since the hardware itself prevents you from changing it, and this also prevents the software from automatically upgrading itself, which is a potential security concern.

If you're really paranoid about security, the only way to be certain your hardware is safe is to review the design and then verify that the produced hardware is made from exactly that design and nothing more. Otherwise, there is no knowing what kind of hidden functionality there is in the hardware, no matter whether its firmware is in RAM or ROM. Maybe this will be feasible one day, but today it would be impractical for any complex piece of hardware unless you're producing it yourself.

Because of this, things like the Pandora's nubs (which I mostly care about because the nub firmware sucks) or the firmware inside of a USB WiFi dongle aren't as much of a concern.

I'd say that uploadable firmware has the advantage that you could theoretically reverse engineer it and then write your own replacement for it. With firmware in a ROM, you're stuck with the way it is.
 
Ive got a wolf3sdl build which runs, but controls need to be figured out.


Zear how do the controls appear in SDL in terms of events generated?
Pickle, sorry about that, but you must know that I already did a port of wolf3d. My port uses a menu to launch all version of wolf3d (shareware or not) and also all version of Spear Of Destiny .


It is based on my own version for Dingoo a320 native OS.


Of course, you can publish your version, it's not a problem .


It's just to inform you.
 
Last edited by a moderator:
Ive got a wolf3sdl build which runs, but controls need to be figured out.


Zear how do the controls appear in SDL in terms of events generated?
Pickle, sorry about that, but you must know that I already did a port of wolf3d. My port uses a menu to launch all version of wolf3d (shareware or not) and also all version of Spear Of Destiny .


It is based on my own version for Dingoo a320 native OS.


Of course, you can publish your version, it's not a problem .


It's just to inform you.

No i dont know, but im curious is yours based on the original source or some fork?
 
Hmm your are using a mips cpu. The ps1 / psp is using one too. This sounds interesting.
 
No i dont know, but im curious is yours based on the original source or some fork?
It is based on DS version and also PSP version for each Wolf3D / Spear Of destiny (Retail or Shareware).


It is based on my own source code menu to launch all version of Wolf3D and Spear Of Destiny.


Take a look at readme file of dingoo native version, you will have all credits regarding versions I used.
 
Thought this latest update by Justin was worth reposting here:


"As for where we stand I dumped the first print house and went to a commercial print house and they promise to deliver no later then Tuesday. The company is called Custom Color they are a very reliable and trusted company with lots of awards.


I have 40 units right now and the remaining 110 should ship this Sunday which is Monday in China. That will be followed one week later by the 150 warranty shipment.


I do apologize for not doing updates but about once a week but between day job and family and background things I'm doing for GCW such as capital raising for a standard production run.


At this point I'm well over what I charged you guys for the Zero SE between new bezel screen having to buy new card readers etc etc. So a lot of my spare time is been spent bustling and hustling try to raise capital."


Source:


Reply# 3016


http://boards.dingoonity.org/gcw-zero/gcw-zero/3015/


A lot of setbacks for him, but it won't be much longer for SE preorderers. :)
 
thanks for relaying this on Saber, good to hear almost out in the wild, shame though that he's running over what he charged, would want him to catch some profit.


I'll buy him a beer when I have mine for his hard work
 
^^^^^We need Mr Fred, linux-swat to translate.

open consoles news said:
Just because nobody's talking about it doesn't mean nothing is happening.


The CCW Zero is quietly making progress, though unfortunately it isn't yet in our hands.


Prototypes have been shipped, and a select few are enjoying a pre-release of the device.


They use this opportunity to share videos of Duke3D multiplayer matches over wifi, the latest ports of well-known games, homebrews and emulators.


What bliss unto these our eyes!


Here's a few reasons to shed tears of impatience. Anyway, this is just a summary of what is going on in our forum.


games


Ports: doom, quake, duke, shadow warrior, wolfenstein, rick dangerous, abuse


homebrew: sqrxz 3, unnamed monkey game


emus: commodore 64


first impressions of the first zeroes


Articus' review, Orion's review


Pictures, videos.


(see original article)
 
Back
Top