* add LZ4 decompression support
* NES: add support for LZ4 compressed ROM. Example : lz4 --best --content-size --no-frame-crc my_rom.nes my_compressed_rom.nes
* fix Makefile
* nes: Expose a buffer with unused ram
* nes: Fix indentation in osd_getromdata
* nes: Use _NES_ROM_UNPACK_BUFFER for LZ4 unpacking
* parse_roms: Compress NES ROMs with LZ4
* fix python typing for backward compatibility 3.6
* NES LZ4 support : add LZ4 format parsing
* Update parse_roms.py
remove unecessary line.
* Update lz4_depack.c
reorder the source code. The notice is now at the top.
* Update parse_roms.py
clean up.
* Update lz4_depack.c
remove <string.h>.
* change submodule link
* typo comment fix
* GB/GBC add LZ4 ROM compression
* LZ4 library can be shared between emulators
* Add GB SRAM buffer setup using linker
* GB/GBC add LZ4 ROM support with bank switching
* add LZ4 decompress function in assembler for fun and test
* Remove static SRAM memory allocation used by the save function to increase the bank switching cache (14 > 26). The SRAM cache is stolen during save and reloaded right after
* add support for Mix compression and alternative compression statregy to limite cache swapping. By default (--compress), all the banks are compressed except bank#0. Using (--compress_gb_speed), the ROM banks are lightly compressed by selecting the larger banks to fill the cache and by trimming the empty banks. The option (--compress_gb_speed) can be used when a game speed is affected by the compression by default (--compress).
* update LZ4 loader with increased SRAM cache size and support for mixing compressed/uncompressed banks
* Fix to support MBC5 8MB ROM size (256 banks)Fix to support MBC5 8MB ROM size (256 banks)
* Linux emulator NES and GB start checked
* module update.
* Update parse_roms.py
remove print.
* update submodule. fix. LZ4 GB for roms size > 2MB
* LZ4 change compression args --best replaced by -9. Fix typo in new args
* Revert "Merge remote-tracking branch 'upstream/main' into main"
This reverts commit 487606760c, reversing
changes made to d9ab8c2870.
* Revert "Revert "Merge remote-tracking branch 'upstream/main' into main""
This reverts commit 6882de3955.
* GB/GBC: fix LCD glitch at the start by cleaning up the buffer emulator
Co-authored-by: Konrad Beckmann <konrad.beckmann@gmail.com>
Co-authored-by: brice <brice.lehouerou@free.fr>
Two binaries generated:
- gw_retro_go_intflash.bin containing the internal flash, 0x08000000
- gw_retro_go_extflash.bin containing the external flash, 0x90000000
This enables us to use the openocd program command with "verify", as we force it to verify only the data at 0x08000000.
Previously, we would get warnings from openocd when programming the elf file (Warn : no flash bank found for address 0x90000000). These are now gone.
Makefile targets have been changed to be more clear:
- `make flash_intflash`: flashes the internal flash (0x08000000)
- `make flash_intflash_nc`: same as the above, but uses nc to communicate with a running openocd session
- `make flash_extflash`: flashes the external flash (0x90000000)
- `make flash`: Flashes both of the above
- `make flash_all`: Alias to flash (kept for legacy reasons, so users can keep running their old commands)
This was originally written by Thomas Roth <code@stacksmashing.net> to
make it possible to support more emulators than what fits into memory at
the same time (commit c13aa09b).
Instead of generating a monolithic binary, the different emulators are
stored in flash and loaded into ram right before they are launched.
This is the basis for adding more emulators e.g. smsplusgx.