Thanks your work and advice, Mbmax.
For your first question, I do not find, let me test to see.
For the second problem, the NDS hardware scaling is used now.
Fast speed, but the disadvantage is that it occupys NDS too much memory (512 * 256 * 2 bytes).
With CPU scaling, although the NDS will not take too much memory, but scaling takes too much CPU time, and the scaling effect is not good enough.
So there is no a good solution to this problem.
For the last question, the software for compatibility dingux, I do not intend to use the touchscreen,
and the boot sequence also can be displayed on the upper screen. Now all the boot sequence output from the serial port.
There is one [slightly better] solution to this problem, change the scaling offset every vblank between two different values.
I used the following for scale a screen by 75%, it should be easy to change to use any screen size. I recommend trying to keep each 8x8 block scaled by the same amount, so that text remains readable. This code resizes 8x8 blocks to 6x6, keeping the scaling even and readable.
CODEÂÂÂÂbounce = 1-bounce;
ÂÂÂÂ
ÂÂÂÂif(bounce==0){
ÂÂÂÂÂÂÂÂpa = (256*341) >> 8;
ÂÂÂÂÂÂÂÂpb = 0;
ÂÂÂÂÂÂÂÂpc = 0;
ÂÂÂÂÂÂÂÂpd = (256*341) >> 8;
ÂÂÂÂÂÂÂÂBG3_CX = (22 8;
ÂÂÂÂÂÂÂÂpb = 0;
ÂÂÂÂÂÂÂÂpc = 0;
ÂÂÂÂÂÂÂÂpd = (256*341) >> 8;
ÂÂÂÂÂÂÂÂBG3_CX = (23