Skip to content
Archive of posts filed under the ARM category.

Compiling sources with different optimization flags with GCC

I had some strange problems with some GCC bugs with AntSnes and gpsp. For some reason some source files did not compile correctly with “-O2” optimization flags. A quick way to fix this problem was to compile the objects with problems without optimizations. My quick “hacky” solution was to compile these few files with “-O0” […]

Memory Mapping solution for Dynamic Recompilation in Symbian OS

The gpsp was my first emulator port with dynamic recompilation. The problem in memory mapping and dynarec is  that local data in Symbian OS is too far away from the user area, where we the new memory chunk for the dynamic area was created. My first solution was the memory trampoline pattern. However I got […]

gpSP: Building A Memory Trampoline

Thanks to the original gpSP creator Exophase for tips. I was really confused with BL instructions and the fact that the memory address was pointing into wrong memory area. The problem was in Symbian OS memory mappings. It’s a very common problem with dynarec and Symbian. I had pr In Symbian you can create memory […]

Using ARM Memory Barrier in Symbian OS

Today I have been digging the methods to  to make a gpSP( I think this is the best GBA emulator) port to Symbian OS.Thanks to the Exophase for developing this wonderful piece of software and for ZodTTD for the awesome ARM port! The gpSP is running “generated” ARM binary in the ARM processor’s memory, so […]

Porting the ARM9 optimized asm code to ARM11

This is just a short post about my modifications to the Snes9x assembly sources. You can find the sources at the 0.1 release post. Actually there was only one modification required, which I will share with you. It might help others to port fast assembly code to ARM11 processors. ARM9 optimized source: and the function […]