Pages: 1
bananabread |
Posted on 06-10-19, 04:01 pm
|
Karma: 5 Posts: 4/6 Since: 05-03-19 |
I'm trying to make a custom level selector, instead of the worldmap. Most of it is in place but I just can't figure out how to draw to the screen. Are there any good tutorials for this. I want to be able to draw epngs and sections of .bin images.
_________________________ yep yep |
TruelyJohn64 |
Posted on 06-10-19, 04:35 pm (rev. 1 by TruelyJohn64 on 06-10-19, 04:41 pm)
|
(Words)
Karma: 730 Posts: 213/265 Since: 01-03-16 |
You mean replace the world map with a level select screen? That requires custom code to do.
Regardless what you're trying to do you need to learn some ASM. Though IIRC there are tools for making epngs _________________________ "I strikingly thought you would know how but it clearly seems you have no knowledge of hacking" - MiiU 2017 |
bananabread |
Posted on 06-10-19, 04:57 pm
|
Karma: 5 Posts: 5/6 Since: 05-03-19 |
I know it requires ASM hacking. That's why I put it in this forum. Currently I'm already able to select a level by using the arrow keys. It's just that the screen is black and I don't know how to put anything on it.
_________________________ yep yep |
TruelyJohn64 |
Posted on 06-10-19, 05:17 pm
|
(Words)
Karma: 730 Posts: 214/265 Since: 01-03-16 |
Sorry about that, force of habit.
The best advice I have for you right now is what Kaze usually says "Look at the original game code and see how it works" The NDSPY discord could probably help you out more, I can't do much on mobile. _________________________ "I strikingly thought you would know how but it clearly seems you have no knowledge of hacking" - MiiU 2017 |
bananabread |
Posted on 06-10-19, 08:51 pm
|
Karma: 5 Posts: 6/6 Since: 05-03-19 |
Update, so I found some examples from devkitpro and was able to make this. It should work but it still doesn't. Could any of you tell me what's wrong?
// Runs as soon as you get in to the world map void nsub_020CF108_ov_08() { videoSetMode(MODE_5_2D); vramSetBankA(VRAM_A_MAIN_BG_0x06000000); setBrightness(3, 0); u8 *bitmap = (u8 *)allocFromGameHeap(66048); u8 *palette = (u8 *)(bitmap); palette += 0x10000; loadFileByExtId_LZ_Dest(2088 - 0x83, bitmap); int bg3 = bgInit(3, BgType_Bmp8, BgSize_B8_256x256, 0, 0); dmaCopy(bitmap, bgGetGfxPtr(bg3), 256 * 256); dmaCopy(palette, BG_PALETTE, 256 * 2); for (;;) { waitForVblank(); myScanKeys(); LevelLoaderUpdate(); } } _________________________ yep yep |
TheGameratorT |
Posted on 06-17-19, 08:09 am (rev. 2 by TheGameratorT on 06-30-19, 10:28 am)
|
Shyguy
DMA problems. Karma: 819 Posts: 34/89 Since: 07-19-18 |
Banana bread, I can help you with that. Contact me on my Discord (TheGameratorT#1850) I have a good experience with drawing ENPGs to the screen. I have pre-prepared functions and headers to help you with that.
- Or reply to me _________________________ NSMB Hacking Discord |
Pages: 1