GP2X Is Dual-screen Gaming Possible/feasible?


nubie

Recovering Jerk-A-Holic
Joined
Oct 19, 2005
Messages
2,749
Location
USA California
Website
Visit site
The recent demo comp turned up an interesting 3D engine, run on the 940T at 50mhz:
rixed posted on Aug 2 2006 at 04:20 PM said:
Actually the source code for my 'code alone' demo was available long before I submitted the entry.
It's all hosted in gna.org and is GPL, as is the 3d rendering library (which is the real project, in fact) :

http:///gna.org/projects/gpu940/

(go to the cvs section to browse online or checkout the whole project).

I'm not surprised, retrospectively, that the demo let the gp2x in some undefined state, as the progam loaded onto the 940 (namely, gpu940) is not unloaded. It should downclock the 940 to 50Mhz then keep reading it's command buffer in a tigh loop when the demo ends, with the vertical interrupt still happening on the 940...

Also, for people who have not their gp2x at hand, the demo is compilable for x86 targets (and runs much much faster there :) )

When I checked out the link (not really a link, due to an extra / that isn't needed), I found this:

https://gna.org/projects/gpu940/

The GPU performs clipping, projection and drawing. Geometry can be drawn onto as many video buffers as you need (not limited to 2). Textures and Z-buffers are like video buffers, so that any texture or z-buffer can be drawed onto, and that any previous video buffer can serve as a texture or z-buffer.

My question is, does this mean we can display different information on the TV screen and the LCD at the same time? I would assume so because many high-end media centers have a high-res LCD for their case display, and it shows the standard info while a movie plays on the TV.

Has anyone been able to output to two screens?

I just realized that he probably means framebuffer as in the ability to buffer ahead to keep scenes running smoothly, oops.

Still, I see many possibilities for rendering to two screens. I could make a headset, mount another LCD and play with 3D depth perception, it would be interesting for sure.

Or a game like battleship, where each user takes turns on the GP2X, animations play on the TV (it could be interesting to make clouds cover the unknown regions), each user "logs out" and the next "logs in" so that they don't see each others screen. Nothing fancy, just a two-key password.
 
Last edited by a moderator:
Well.

The GP2X is runs Linux. Which uses X for display. Which, when last I checked, is certainly capable of multimonitor support by editing the relevant config files.

So yes, it's possible. But I'm struggling to see a truly practical application.
 
altough there's X11 for GP2X, I don't think that dual display X server would be much useful for gp2x
perhaps one could compile xmms and let it play/control on lcd and eyecandy on the other (wich everybody else would look at or just avoid a plasma screen to get hammered by the same image all time) display
or playing a movie on tv and browsing functions on lcd, pretty much the same thing as the menu on movie playback, but not overlapping the image

anyway it still depends on the possibility to display to both at same time
I think that the author means that you're not limited into drawing directly to the actual display buffer, so one can do double buffering, tripple buffering or even render to jpg file or something..
 
Lint posted on Aug 3 2006 at 11:32 AM said:
altough there's X11 for GP2X, I don't think that dual display X server would be much useful for gp2x
perhaps one could compile xmms and let it play/control on lcd and eyecandy on the other (wich everybody else would look at or just avoid a plasma screen to get hammered by the same image all time) display
or playing a movie on tv and browsing functions on lcd, pretty much the same thing as the menu on movie playback, but not overlapping the image
Exactly, those are perfect examples of useful reasons to have dual-screen.
anyway it still depends on the possibility to display to both at same time
I think that the author means that you're not limited into drawing directly to the actual display buffer, so one can do double buffering, tripple buffering or even render to jpg file or something..
I realized that toward the end of my post, but I am sure his library could be used to draw to a second-screen framebuffer too.
 
Last edited by a moderator:
Vimacs posted on Aug 3 2006 at 09:48 AM said:
the gp2x dosnt use x, and its not about the software supporting it but the hardware.

Doesn't matter how many frame buffers you can render into if the hardware only works out of one. There is one RGB layer and one set of on/off settings for each layer (RGB, YUVA/B, overlay, etc). It's certainly possible to do multiple displays, but if you mean the built-in LCD and the built-in TV-out, I don't see any way it could be done. You'd have to do some custom display thing over USB or serial.
 
Last edited by a moderator:
rabidcow posted on Aug 3 2006 at 01:03 PM said:
Vimacs posted on Aug 3 2006 at 09:48 AM said:
the gp2x dosnt use x, and its not about the software supporting it but the hardware.

Doesn't matter how many frame buffers you can render into if the hardware only works out of one. There is one RGB layer and one set of on/off settings for each layer (RGB, YUVA/B, overlay, etc). It's certainly possible to do multiple displays, but if you mean the built-in LCD and the built-in TV-out, I don't see any way it could be done. You'd have to do some custom display thing over USB or serial.
I don't know what you mean, the LCD controllor is internal to the MMSP2, but the Conexant TV encoder is tied to the RGB out of the MMSP2.

AFAIK there is a valid reason for expecting there to be the dual output option: namely that the MMSP2 is made for DVR and DVD and Media Player usage, wherein some models use the LCD driver for the front panel display and the external video source to drive the Television, obviously the LCD and the TV would not show the same output if there was a movie on the DVD player.

The LCD would have a counter and such on it while the movie played.

I will re-read my MMSP2 PDF, I don't know if it specifically mentions that function though.

It does not specifically mention it, what are you talking about hardware-wise? The Linux implementation? Or something else?
 
Last edited by a moderator:
nubie posted on Aug 3 2006 at 11:37 PM said:
I don't know what you mean, the LCD controllor is internal to the MMSP2, but the Conexant TV encoder is tied to the RGB out of the MMSP2.
The video-out pins of the MMSP2 are connected to both the LCD and the TV out. You can easily activate both at once by switching to TV mode, run the music player and press start (I think) to toggle the LCD - you may need to press it twice.
There is no support for a second display.

AFAIK there is a valid reason for expecting there to be the dual output option: namely that the MMSP2 is made for DVR and DVD and Media Player usage, wherein some models use the LCD driver for the front panel display and the external video source to drive the Television, obviously the LCD and the TV would not show the same output if there was a movie on the DVD player.
And those players don't use the MMSP2! There may be other SoC that have dual output but the cost will be a lot higher.

The LCD would have a counter and such on it while the movie played.
You could always rig up an HD44780 to the serial port (or possibly USB), that gives you a 20x4 character display - I have one on my MythTV box although it is wired to the parallel port so I can't test it on the GP2X
 
Last edited by a moderator:
paeryn posted on Aug 3 2006 at 05:50 PM said:
nubie posted on Aug 3 2006 at 11:37 PM said:
I don't know what you mean, the LCD controllor is internal to the MMSP2, but the Conexant TV encoder is tied to the RGB out of the MMSP2.
The video-out pins of the MMSP2 are connected to both the LCD and the TV out. You can easily activate both at once by switching to TV mode, run the music player and press start (I think) to toggle the LCD - you may need to press it twice.
There is no support for a second display.
Aah, OK. The MagicEyes document is confusing me badly.
 
Last edited by a moderator:
Back
Top