DimitrisVlachos / Gnuboy64

My N64 port of GNUBoy GB/GBC color emulator.90% of rendering code has been written in mips32 assembly. Also features my static recompiler for RDP gpu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

22/3/14:
+64Drive is now supported (Thanks to Marshall(64drive.retroactive.be) for the sample cart)

8/3/14:
+Implemented full ROM version with embedded tiny fs (also supports save State(max 1)/Sram+Rtc saves)
+Implemented a very primitve SRAM file system
+Did some hackish changes for the rombuild around the source code to simplify things(ie too lazy to implement proper rom fs driver)
+Wrote a simple tool to import GB/GBC files + state files into the rom build (Works with mess emulator aswell)


Initial version:
+~90+% of lcd code has been rewritten in  mips assembly
+Added more cpu precomputed lookup tables&improved original code
+Almost 1MB of rom data are precomputed lookup tables (Yikes!!!)
+Wrote an improved algorithm for vram pixel data updates that reduces the linear complexity of the original
+Implemented mem_map_ptr for direct HDMA mapping & mem_read_range & mem_write_range for unmap-able addresses
+Added lookup table for precomputed vram flags
+Added lookup tables for precomputed sprite flags(gb&cgb)
+Added r8g8b8/r5g5b5a1 palette 3268*sizeof(u32) precomputed lookup tables (32bit mode is not used as it doesn't "offer" anything
other than wasting more ram.Make custom builds of the code if you want that feature...)
+Improved sprite sorting code
+Sound mixer was heavily optimized
+Sound wave frequency is calculated using a constant reciprocal table that replaces some divisions with a fraction mult..
+Improved sound reg reads/writes
+Improved loader code (Re-allocations for alignment are replaced with header fetching + one allocation)
+Implemented file system wrappers & drivers (other flashcarts can be supported aswell)
+Implemented custom low level non blocking audio driver
+Fixed memory leaks found in the original code
+Made countless tools
+Uses the most recent GCC sdk toolchain version(4.8.1)

About

My N64 port of GNUBoy GB/GBC color emulator.90% of rendering code has been written in mips32 assembly. Also features my static recompiler for RDP gpu

License:MIT License


Languages

Language:C 87.8%Language:Objective-C 11.8%Language:Assembly 0.4%Language:Makefile 0.0%Language:C++ 0.0%