Homebrew Homebrew Development

ichichfly

Well-Known Member
Member
Joined
Sep 23, 2009
Messages
619
Trophies
1
XP
1,075
Country
Gambia, The
Is someone experiencing like me glitches drawing in ARM11 mode? I have the problem that randomly the value of some pixels don't change (even if the new value is correctly stored in the buffer, I checked it). Drawing in other position of the screen makes appear gradually the previously not correctly showed pixels. Very strange. Probably some sync problem with GPU.

If you want I can post the ARM11 version of my TE3DS to show more clearly the problem.

It's very annoying now that I can use the touchpad and the joystick. I would like to code somethin new, but I'm stuck on this problem.

use
u32 mcrVal=0x0;
__asm__ ("mcr p15, 0, %[val], c7, c14, 4" :: [val] "r" (mcrVal)); //flush
__asm__ ("mcr p15, 0, %[val], c7, c10, 4" :: [val] "r" (mcrVal)); //Data Synchronization Barrier Register


after you wrote the buffer that should fix the problem + you need to sync to the frames (you can also swap the buffer manually with a GPU register (you can use the GPU register only on the arm11)) or write to both buffer

... and sdmmc library doesn't work anymore in ARM11. :cry:

well it only works on the arm9 what have you expected (you can use a static buffer in the mem to send data to the other processor)
 
  • Like
Reactions: Coto
D

Deleted User

Guest
Found the cause of not being able to get the code working, it's a problem of Python with Win 7 causing to not passing arguments to py scripts, so the kfs.bin isn't compiled (i get an empty file).

Here some hints to solve it case someone else has the same problem: http://bugs.python.org/issue7936
Wow, that link helped me out. Thanks for helping me solving this nasty bug. I wonder why they didnt include that easy bugfix in the new installer of python...
 

nop90

Well-Known Member
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
use
u32 mcrVal=0x0;
__asm__ ("mcr p15, 0, %[val], c7, c14, 4" :: [val] "r" (mcrVal)); //flush
__asm__ ("mcr p15, 0, %[val], c7, c10, 4" :: [val] "r" (mcrVal)); //Data Synchronization Barrier Register


after you wrote the buffer that should fix the problem + you need to sync to the frames
I don't full understand your hint, but I'll study on it. Thanks.

(you can also swap the buffer manually with a GPU register (you can use the GPU register only on the arm11)) or write to both buffer
I was tyrying to swap buffers writing to the register. I adapted the code from Smea examples, but it doesn't work or I did something wrong.

Anyway I don't need to write to both buffer, an solved the problem of the bad pixels writing always on the back buffers than copying to front buffers with a memcopy.

well it only works on the arm9 what have you expected (you can use a static buffer in the mem to send data to the other processor)

Using the ARM11 jump by Kane, I don't have anymore control on ARM9. Too less time and too little knowledge to modify Kane work.

Thank you.
 

ichichfly

Well-Known Member
Member
Joined
Sep 23, 2009
Messages
619
Trophies
1
XP
1,075
Country
Gambia, The
I don't full understand your hint, but I'll study on it. Thanks.


I was tyrying to swap buffers writing to the register. I adapted the code from Smea examples, but it doesn't work or I did something wrong.

You can not use IPC after you have used the exploit you have to write to the GPU register directly. Or restore the arm9 IPC stuff + swap to arm11 system mode
 

YoshiInAVoid

Banned!
Banned
Joined
Jan 10, 2011
Messages
560
Trophies
1
Website
google.com
XP
465
Country
Hello everyone, here my 3DNES emulator with a lot of bug(it's a prototype to test).
*Removed URL - Contains retail ROM*
Features: Super Mario Bros

The Joypad doesn't work(and my knowledge in NES is very low :c) and the clear-screen doesn't work too.
What is the filename of the NES ROM that it boots? You should also mention that your Launcher is unencrypted.
 

nop90

Well-Known Member
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
Good work st4rk. If you need help let me know. I should have some free time in the next weeks.

I'm working on an emulator too, but it's in an early stage yet to make anticipations ;)
 
  • Like
Reactions: st4rk

nop90

Well-Known Member
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
Lag can be solved optimizing the code.

For the black sscreen bug, don't know exatly which is. At the moemnt I solved all my problems with screens and ARM11 is considerably faster to avoiding buffer switching (... using some tricks!).
 
  • Like
Reactions: st4rk

Kane49

Well-Known Member
Member
Joined
Nov 4, 2013
Messages
446
Trophies
0
Age
36
XP
343
Country
Gambia, The
Because of this the Joypad address change, right ?


http://3dbrew.org/wiki/Memory_layout

Code:
E8000000 - E8600000: mapped VRAM (18000000 - 18600000)
 
EFF00000 - F0000000: mapped Internal memory (1FF00000 - 20000000)
F0000000 - F8000000: mapped Main memory
 
FF401000 - FF402000: mapped ? (27FC7000 - 27FC8000)
 
FF403000 - FF404000: mapped ? (27FC2000 - 27FC3000)
 
FF405000 - FF406000: mapped ? (27FBB000 - 27FBC000)
 
FF407000 - FF408000: mapped ? (27FB3000 - 27FB4000)
 
FF409000 - FF40A000: mapped ? (27F8E000 - 27F8F000)
 
FFF00000 - FFF45000: mapped SlabHeap
 
FFF60000 - FFF8B000: mapped Kernel code
 
FFFCC000 - FFFCD000: mapped IO I2C second bus (10144000 - 10145000)
 
FFFCE000 - FFFCF000: mapped IO PDC(LCD) (10400000 - 10401000)
 
FFFD0000 - FFFD1000: mapped IO PDN (10141000 - 10142000)
 
FFFD2000 - FFFD3000: mapped IO PXI (10163000 - 10164000)
 
FFFD4000 - FFFD5000: mapped IO PAD (10146000 - 10147000)
 
FFFD6000 - FFFD7000: mapped IO LCD (10202000 - 10203000)
 
FFFD8000 - FFFD9000: mapped IO DSP (10140000 - 10141000)
 
FFFDA000 - FFFDB000: mapped IO XDMA (10200000 - 10201000)
 
FFFDC000 - FFFE0000: mapped ? (1FFF8000 - 1FFFC000)
 
FFFE1000 - FFFE2000: mapped ? (1FFF0000 - 1FFF1000)
 
FFFE3000 - FFFE4000: mapped ? (1FFF2000 - 1FFF3000)
 
FFFE5000 - FFFE9000: mapped L1 MMU table for VA xxx00000
 
FFFEA000 - FFFEB000: mapped ? (1FFF1000 - 1FFF2000)
 
FFFEC000 - FFFED000: mapped ? (1FFF3000 - 1FFF4000)
 
FFFEE000 - FFFF0000: mapped IO IRQ (17E00000 - 17E02000)
 
FFFF0000 - FFFF1000: mapped Exception vectors
 
FFFF2000 - FFFF6000: mapped L1 MMU table for VA xxx00000
 
FFFF7000 - FFFF8000: mapped ? (1FFF1000 - 1FFF2000)
 
FFFF9000 - FFFFA000: mapped ? (1FFF3000 - 1FFF4000)
 
FFFFB000 - FFFFE000: mapped L2 MMU tables (1FFF5000 - 1FFF8000)
 
  • Like
Reactions: st4rk

nop90

Well-Known Member
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
The right screen black :c

Are you still using the addresses listed in thr code of your CHIP8-ARM11?

Code:
#define TOP_LEFT_FRAME1 0xF0184E60
#define TOP_LEFT_FRAME2 0xF01CB370
#define TOP_LEFT_FRAME3 0x20184E60
#define TOP_LEFT_FRAME4 0x201CB370
#define TOP_RIGHT_FRAME1 0x20282160
#define TOP_RIGHT_FRAME2 0x202C8670
#define SUB_FRAME1 0x202118E0
#define SUB_FRAME2 0x20249CF0 //539039968

Try using these (simply replace the first 2 with a F)

Code:
#define TOP_LEFT_FRAME1 0xF0184E60
#define TOP_LEFT_FRAME2 0xF01CB370
#define TOP_RIGHT_FRAME1 0xF0282160
#define TOP_RIGHT_FRAME2 0xF02C8670
#define SUB_FRAME1 0xF02118E0
#define SUB_FRAME2 0xF0249CF0
 
  • Like
Reactions: SLiV3R and st4rk

Flame

Me > You
Global Moderator
Joined
Jul 15, 2008
Messages
7,284
Trophies
3
XP
18,788
Just installed ROP installer on my 4.5 3DS so i can use st4rk NES homebrew and some how ROP installer got corrupted. the problem is, it made my DS flashcart stop working... and made me not enter the DS profile of the 3DS. it made the 3DS "Limbo"..


the way i had to Fix this was by formating my 3DS.


for future reference if anybody has this problem too.
 

st4rk

nah
Member
Joined
Feb 11, 2014
Messages
542
Trophies
0
Website
st4rk.net
XP
815
Country
Brazil
Just installed ROP installer on my 4.5 3DS so i can use st4rk NES homebrew and some how ROP installer got corrupted. the problem is, it made my DS flashcart stop working... and made me not enter the DS profile of the 3DS. it made the 3DS "Limbo"..


the way i had to Fix this was format my 3DS.


for future reference if anybody has this problem too.

Install the Stable ROP Loader, you can find it in this topic
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Veho @ Veho: Firefox users be like "look at what they have to do to mimic a fraction of our power."