91 Commits

Author SHA1 Message Date
Adam Minchinton
de740f6a7e Update make file to support GNW_TARGET and add flags 2021-11-16 22:16:58 +01:00
Konrad Beckmann
57a7dbc131 makefile: Improve readability of extflash info 2021-11-11 20:38:17 +01:00
Konrad Beckmann
afa7b0ddb7 makefile: Avoid redundant linking 2021-11-11 20:32:07 +01:00
Konrad Beckmann
0651fdf138 makefile: Improve help 2021-11-08 23:01:46 +01:00
Konrad Beckmann
babe99a378 Improve the Docker flow
By mounting the current directory and preserving the uid/gid,
the docker container doesn't have to include the source code,
roms etc.
2021-11-06 13:04:49 +01:00
Konrad Beckmann
8daa749dda makefile: Remove elf dependency from dump_screenshot 2021-11-02 22:56:41 +01:00
Konrad Beckmann
ee3cb5e9b5 Add screenshot support
Closes #163
2021-10-31 02:30:13 +02:00
Konrad Beckmann
d483651abd Make it possible to build with COMPRESS=0 2021-10-15 00:00:38 +02:00
Konrad Beckmann
290a9402c4 Add option to disable save state support (STATE_SAVING=0) 2021-10-10 15:28:18 +02:00
Konrad Beckmann
76313eff72 makefile: Add python version check (>= 3.6) 2021-10-09 21:51:59 +02:00
Brian Pugh
daff3addc4 Make lzma the default ROM compression method 2021-09-30 18:26:35 +02:00
Brian Pugh
3e9ec78a11 LZMA ROM compression (#148)
* lzma initial commit

* Save 13 bytes per lzma compression

* initial lzma support

* update readme

* Update submodule

* linux: Fix gb makefile

Co-authored-by: Konrad Beckmann <konrad.beckmann@gmail.com>
2021-09-18 17:09:28 +02:00
Brian Pugh
2ac8ff2e17 extflash_erase target (#143)
* extflash_erase target

* cleanup extflash_erase target script per PR comments

* remove verbosity in extflash_erase.sh

* fix syntax error in extflash_erase.sh. added flash_intflash as target dependency
2021-09-06 18:41:46 +02:00
Konrad Beckmann
823b4ea41e Name variables more accurately
FLASHAPP = scripts/flashapp.sh
FLASH_MULTI = scripts/flash_multi.sh
2021-09-06 18:34:27 +02:00
Christian Unhold
38dcc2dc0e makefile: add COMPRESS to help 2021-09-03 22:47:00 +02:00
Konrad Beckmann
ac73c47398 makefile: Use /usr/bin/env 2021-08-18 11:29:10 +02:00
Konrad Beckmann
c8b3e3955f makefile: Improve error messages for toolchain detection 2021-08-18 11:23:53 +02:00
Brian Pugh
dbc2253023 Working Bank2 Flashapp (#131)
* set intflash address when programming

* Allow flashapp to work when flashing bank 2

* update readme

* Add tim bootloader SRAM magic-byte

* move boot stuff around to more appropriate locations
2021-08-15 21:42:57 +02:00
Konrad Beckmann
8a641f844a Add EXTFLASH_FORCE_SPI to force legacy SPI mode for the flash driver 2021-08-15 02:22:25 +02:00
Konrad Beckmann
e452a5aade makefile: Fix make help 2021-08-12 22:55:19 +02:00
northskysl
d9542eb709 STM32 RTC Hardware Support & User Interface for Watch and Calendar (#128)
* Update rg_main.c

Added a menu to view and configure RTC parameters. It is activated by pressing 'TIME' button in retro-go main menu.

* Update main.c

Enable LSE oscillator and enable it as RTC clock source. Additionally enable CRS Sync LSE.

* Added time display to RTC menu

Added time display to RTC menu and also modified RTC initialization code so that it does not set the RTC date and time. Assuming that a fresh RTC has sensible values.

* Add date display to time menu

Added date display to time menu

* Fix predivs for LSE

Fixed predivs for LSE clock

* move RTC stuff to rg_rtc

Consolidate all RTC functions to rg_rtc. So far getters have been implemented only.

* Time setup UI + setters for Time

Setters for Time have been implemented and Time setup has been added into the UI to use them.

* Date setup added

Date setup with callbacks added

* Add real time datetime display

Modified the time menu to display and update in real time.

* Add a function to return Unix time

Unix time is returned as a 64-bit time_t. Casting to uint32_t will yield time in seconds since 1st Jan 1970.

* Fix setters' return type

Fixing warnings about wrong setter return type.

* Update rg_rtc.h

Missed the .h while updating return types of setters.

* Update rg_rtc.c

Add a nicer year display

* Reactivate LSI

This should fix an issue with DACs that causes Brightness control not to work.
2021-08-12 14:34:00 +02:00
Brian Pugh
314fc9863d Add features to make compatible with tim's patched firmware (#124) 2021-08-11 22:18:07 +02:00
ludo
3514fb8613 Add GW support 2021-08-09 20:20:17 +02:00
Brian Pugh
820722f4ae Flash monitor (#123)
* automatically launch openocd

* Add "monitor" and "flash-monitor" targets to launch logpoll
2021-08-08 18:55:17 +02:00
Konrad Beckmann
79636bd7ec makefile: Add make dump_logs to dump callstack and logs 2021-08-04 11:57:59 +02:00
Konrad Beckmann
5e9d24ffa5 makefile: Print toolchain variables in help 2021-08-03 23:55:28 +02:00
Konrad Beckmann
399acf57f4 makefile: Print config variables in make help 2021-08-03 20:10:48 +02:00
Konrad Beckmann
bff9f57216 makefile: Reset device in reset_dbgmcu 2021-08-03 20:10:32 +02:00
Konrad Beckmann
ade7cb6fc5 New flash driver and integrated loader 2021-08-03 17:06:54 +02:00
Konrad Beckmann
a20c590b79 makefile: Add RESET_DBGMCU to control if debug should be disabled 2021-07-12 18:10:45 +02:00
Konrad Beckmann
2e0525565f makefile: Rename disable_debug_block to reset_dbgmcu 2021-07-12 18:10:31 +02:00
Konrad Beckmann
76b5680df0 makefile: Reset DBGMCU_CR after flashing
This will disable clocks from running when the device
is in standby after being flashed, increasing battery life.
2021-07-11 22:39:08 +02:00
Konrad Beckmann
1bfba9776e Move scripts to a separate directory 2021-07-11 22:07:31 +02:00
Konrad Beckmann
0c092ae9fc Add script to erase save slots 2021-07-11 12:20:18 +02:00
Brian Pugh
864c488c3e Initial attempt at deflate nes support 2021-07-08 20:06:43 +02:00
Brian Pugh
f2f754e81e remove lupng from the build 2021-07-08 20:06:43 +02:00
Brian Pugh
e39ede61a2 refactor parse_roms.py to use pathlib and be easily expandable for future compression algorithms 2021-07-07 08:36:21 +02:00
ludo
711052daf7 - Add SG-1000 support 2021-06-30 00:21:12 +02:00
ludo
c01ee42360 Add support of Colecovision 2021-06-30 00:21:05 +02:00
Konrad Beckmann
e3a0a06d13 Makefile: Allow gcc 11 2021-05-15 16:17:18 +02:00
Konrad Beckmann
c0ef062af7 Makefile: Check and verify installed tools
This will check for:
- gcc version 10
- objcopy elf32-littlearm
- objdump arm7e-m

Can be ignored by setting CHECK_TOOLS=0
2021-05-09 20:13:35 +02:00
Konrad Beckmann
fec69518c3 Makefile: Add COMPRESS variable to control if compression should be performed 2021-04-27 22:41:32 +02:00
GaryZ88
3df1e0a0c0 Adding PC Engine (TurboGrafx-16) Emulation (#78)
Adding PC Engine (TurboGrafx-16) Emulation
2021-02-18 08:16:32 +01:00
Jan Dumon
ea18ae2f5f Use objcopy to convert roms to .o files
Converting the rom files to .c files with char arrays is very heavy on
the memory usage of the compiler. By converting them directly to .o
files this step is no longer needed.

The Makefile dependencies of generating the rom files has been fixed.
Parsing the rom files will now only happen once when -j is used.
2021-02-12 13:55:51 +01:00
Konrad Beckmann
1670080694 makefile/ld: Improve internal flash programming
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)
2021-01-13 23:32:32 +01:00
Konrad Beckmann
804171b920 makefile: Add -fstack-usage -Wstack-usage=20480 2021-01-13 22:18:53 +01:00
Konrad Beckmann
7ce42520d6 Move headers to more sensible places 2021-01-12 23:49:30 +01:00
Konrad Beckmann
c6014e0bd9 retro-go: Update submodule (gb, nes fixes) and fixup 2021-01-11 12:10:05 +01:00
Franz Levin
bc61c642b1 battery: Added battery status 2021-01-11 02:30:22 +01:00
Konrad Beckmann
3b50f7a1cd Generate emulator configuration based on roms
Closes #57
2021-01-09 06:35:26 +01:00