Bottom screen screenshot

Post Reply
eglomer
Posts: 4
Joined: Thu Sep 24, 2009 3:48 pm

Bottom screen screenshot

Post by eglomer » Thu Sep 01, 2011 10:19 pm

Hi folk!!

I'm trying to get a BMP screenshot from the bottom screen using the libnds "screenshot" example, but I don't know how to do it. I've tried using lcdSwap(); and lcdMainOnBottom(); just before using the screenshot function, but there's no way.

Some help?

mtheall
Posts: 210
Joined: Thu Feb 03, 2011 10:47 pm

Re: Bottom screen screenshot

Post by mtheall » Thu Sep 01, 2011 11:42 pm

The capture hardware only works on the main engine, therefore a quick swap of the screens won't help you. You have to render what you want to screenshot with the main engine.

Code: Select all

             _____________               __________
  VRAM A -->| 2D Graphics |--------OBJ->|          |
  VRAM B -->| Engine A    |--------BG3->| Layering |
  VRAM C -->|             |--------BG2->| and      |
  VRAM D -->|             |--------BG1->| Special  |
  VRAM E -->|             |   ___       | Effects  |
  VRAM F -->|             |->|SEL|      |          |          ______
  VRAM G -->| - - - - - - |  |BG0|-BG0->|          |----+--->|      |
            | 3D Graphics |->|___|      |__________|    |    |Select|
            | Engine      |                             |    |Video |
            |_____________|--------3D----------------+  |    |Input |
             _______      _______              ___   |  |    |      |
            |       |    |       |<-----------|SEL|<-+  |    |and   |-->
            |       |    |       |    _____   |A  |     |    |      |
  VRAM A <--|Select |    |Select |   |     |<-|___|<----+    |Master|
  VRAM B <--|Capture|<---|Capture|<--|Blend|   ___           |Bright|
  VRAM C <--|Dest.  |    |Source |   |_____|<-|SEL|<----+    |A     |
  VRAM D <--|       |    |       |            |B  |     |    |      |
            |_______|    |_______|<-----------|___|<-+  |    |      |
             _______                                 |  |    |      |
  VRAM A -->|Select |                                |  |    |      |
  VRAM B -->|Display|--------------------------------+------>|      |
  VRAM C -->|VRAM   |                                   |    |      |
  VRAM D -->|_______|   _____________                   |    |      |
                       |Main Memory  |                  |    |      |
  Main   ------DMA---->|Display FIFO |------------------+--->|______|
  Memory               |_____________|
             _____________               __________           ______
  VRAM C -->| 2D Graphics |--------OBJ->| Layering |         |      |
  VRAM D -->| Engine B    |--------BG3->| and      |         |Master|
  VRAM H -->|             |--------BG2->| Special  |-------->|Bright|-->
  VRAM I -->|             |--------BG1->| Effects  |         |B     |
            |_____________|--------BG0->|__________|         |______|
http://nocash.emubase.de/gbatek.htm#dsv ... ockdiagram

If it's an alternative, you can screenshot using an emulator :D
Last edited by mtheall on Thu Sep 01, 2011 11:48 pm, edited 1 time in total.

eglomer
Posts: 4
Joined: Thu Sep 24, 2009 3:48 pm

Re: Bottom screen screenshot

Post by eglomer » Thu Sep 01, 2011 11:48 pm

Unfortunately, emulator isn't an alternative, but thanks, mtheall.

:)

mtheall
Posts: 210
Joined: Thu Feb 03, 2011 10:47 pm

Re: Bottom screen screenshot

Post by mtheall » Thu Sep 01, 2011 11:50 pm

Then, you will definitely need to do it using the main engine. Unless you use one of those portable scanners, maybe. It would probably be too slow.

zeromus
Posts: 212
Joined: Wed Mar 31, 2010 6:05 pm

Re: Bottom screen screenshot

Post by zeromus » Thu Sep 01, 2011 11:52 pm

If emulator fails as an alternative for reasons which could be resolved, then perhaps it could be resolved.

Post Reply

Who is online

Users browsing this forum: No registered users and 36 guests