Homebrew Homebrew Development

  • Thread starter Thread starter aliak11
  • Start date Start date
  • Views Views 1,475,224
  • Replies Replies 6,048
  • Likes Likes 54
What makes you think it'll take a while?
Mainly because everybody is so worried about protecting against backup loaders that they won't release it. Sure, someone could come along tomorrow who will open ARM11 code execution, but it's not probable.

Related to the binary loader: That looks great, would it be possible to exit out of a program and back into the loader?
 
Mainly because everybody is so worried about protecting against backup loaders that they won't release it. Sure, someone could come along tomorrow who will open ARM11 code execution, but it's not probable.

Related to the binary loader: That looks great, would it be possible to exit out of a program and back into the loader?


It is. Still need to clean up the reloading however. You can also reload the loader itself with an updating version from the SD(that's go.bin on the SD in the vid).
 
unrelated to that ^

Here's a binary loader I've been working on:

At this point it would be nice to standardize a small memory area that's "safe" prior to passing control to the binary, one that homebrews can "leave alone" where code could be put for soft reset, possibly the same area used for the home menu during normal game execution. If respected from this early age of development it would be nice because we could finally have a working soft reset from within all homebrew, something that was missing during the DS age. Would be nice to not have to keep shutting down the console to quit an app.
 
Downloading OpenSSL, changing Makefile to produce ROPLauncher.dat and then adding an extra stage to build.bat:

Code:
make
openssl enc -aes-128-cbc -K 580006192800C5F0FBFB04E06A682088 -iv 00000000000000000000000000000000 -in ROPLauncher.dat -out Launcher.dat
pause

We can produce Launcher.dats which will run on Gateway 2.01b loader.

Is this ARM 11 mode?

Don't kill me for the noob question please!
 
The arm9 CPU has pretty much full access to the system's memory. Overwriting something and getting the arm11 CPU to reach that code isn't hard.
 
The arm9 CPU has pretty much full access to the system's memory. Overwriting something and getting the arm11 CPU to reach that code isn't hard.3


No argument there, if only someone would publicly release the way to enter arm9 privileged mode.
 
:nds:
nlk3b6i9.jpg

That's just a RAM edit and means something like "Unhealthiness".
 
  • Like
Reactions: Roxas75
I have been having so much trouble trying to get 3D working on by Breakout game.

Here's the function I'm using from Snailface:
Code:
void draw_fill3Drect(int x, int y,int w,int h, char r, char g, char b, int offset3D) {
 
    int lcoord = 720 * (x - offset3D) + 720 - (3 * y + 3);
    int rcoord = 720 * (x + offset3D) + 720 - (3 * y + 3);
 
 
    char* L1 = (char*) (lcoord + TOP_LEFT_FRAME0);
    char* L2 = (char*) (lcoord + TOP_LEFT_FRAME1);
    char* R1 = (char*) (rcoord + TOP_RIGHT_FRAME0);
    char* R2 = (char*) (rcoord + TOP_RIGHT_FRAME1);
    char* L1temp;
    char* L2temp;
    char* R1temp;
    char* R2temp;
    L1temp = L1;
    L2temp = L2;
    R1temp = R1;
    R2temp = R2;
 
    for (x = 0; x < w; x++) {
 
        for (y = 0; y < h; y++) {
            * L1 = b;
            *(L1 + 1) = g;
            *(L1 + 2) = r;
 
            * L2 = b;
            *(L2 + 1) = g;
            *(L2 + 2) = r;
 
            * R1 = b;
            *(R1 + 1) = g;
            *(R1 + 2) = r;
 
            * R2 = b;
            *(R2 + 1) = g;
            *(R2 + 2) = r;
       
            L1 += 3;
            L2 += 3;
            R1 += 3;
            R2 += 3;
        }
        L1temp += 720;
        L2temp += 720;
        R1temp += 720;
        R2temp += 720;
        L1 = L1temp;
        L2 = L2temp;
        R1 = R1temp;
        R2 = R2temp;
    }
}
I refer to the function with
Code:
draw_fill3Drect(x*BRICK_WIDTH,y*BRICK_HEIGHT,BRICK_WIDTH-1,BRICK_HEIGHT-1,0,255,0,offset3D);
The "-1" used to be a -2 which is the amount of space between the bricks, but for some reason, this function wants to double that value so I had to drop it down, the offset3D is set at five. This function will draw 3D boxes, but it writes most of the top layer of bricks to the bottom of the screen and I can't figure out why...here's a very bad photo (sorry!, I think the lens had a fingerprint on it and there was really bad lighting):
DSCF8963.JPG

So why are the bricks being written to the bottom of the screen and what can I do to fix the problem?
 

Site & Scene News

Popular threads in this forum