110 Commits

Author SHA1 Message Date
Konrad Beckmann
7f57f94a2f snes9x: Basic bringup on device 2021-08-07 20:15:13 +02:00
Konrad Beckmann
26a4c4fc66 snes9x: Boilerplate integration 2021-08-07 20:15:13 +02:00
Brian Pugh
eeffce05c6 Fix slightly incorrect buffer swapping in nes osd_blitscreen 2021-08-07 18:29:09 +02:00
Brian Pugh
fbb791b0a6 Fix sms from emulating 5% too fast introduced in b6bbe8e2. Slightly increase target frame period accuracy for all emulators 2021-08-04 19:58:00 +02:00
Brian Pugh
a3af61f484 continue drawing frames and don't skip until CPU usage hits 100 percent 2021-08-03 23:58:49 +02:00
Konrad Beckmann
ade7cb6fc5 New flash driver and integrated loader 2021-08-03 17:06:54 +02:00
Brian Pugh
1541393509 Long hold pause/set to toggle speedup (#114)
* nes long hold pause/set to toggle speedup

* refactor nes common emu loop; need to fix busyTime

* move odroid_system_tick into common loop, fix cpumon

* nes common_emu_loop

* pce common_emu_loop

* sms common_emu_loop

* fix some warnings

* setup pause/set macros; remove speedup based on long-pressing pause/set

* Update readme. Initial Controls section commit

* linting

* mute while macro save-stating
2021-07-29 20:20:55 +02:00
Brian Pugh
0403b679cb change pce pause_pressed and power_pressed to correct dtypes 2021-07-25 09:17:38 +02:00
Brian Pugh
88c8df2492 change sms pause_pressed and power_pressed to correct dtypes 2021-07-25 09:17:38 +02:00
Brian Pugh
1dedf5986a change gb pause_pressed and power_pressed to correct dtypes 2021-07-25 09:17:38 +02:00
Brian Pugh
1925bcccb5 change nes pause_pressed and power_pressed to correct dtypes 2021-07-25 09:17:38 +02:00
Brian Pugh
836db3157c Have NES use joystick abstraction (matching other emus) rather than directly reading raw gnw buttons 2021-07-25 09:17:38 +02:00
Brian Pugh
2d166d5cb0 Save state and poweroff when power is pressed when in-menu (#112) 2021-07-24 18:12:08 +02:00
Brian Pugh
b6bbe8e2bb Add 0.5x, 0.75x, 1.25x and 1.5x speed options (#111)
* fix GB speedup, add 1.25x and 1.5x options

* Add options for 0.5x and 0.75x in gb

* nes speedup

* pce speedup

* sms speedup

Closes #110
Closes #56
2021-07-21 08:23:46 +02:00
Rustam Zinurov
94062c331c Issue 101: Remember the last selected game in the menu after reset (#108)
Remember the last selected game in the menu after reset

Closes #101 

Add two extra variables to odroid settings:
 - main_menu_selected_tab
 - main_menu_cursor

* Reset active tab on power off

* Update retro-go-stm32 submodule to latest main

* Remember the last selected game in the menu on power off
2021-07-14 22:21:52 +02:00
Brian Pugh
864c488c3e Initial attempt at deflate nes support 2021-07-08 20:06:43 +02:00
Konrad Beckmann
e20419fd99 Ensure that the main menu will be entered after resetting. 2021-07-03 01:52:51 +02:00
Konrad Beckmann
c73bd95d74 Suspend after idling in the main menu
Default timeout is 10 minutes.

Also adds a configurable timeout for this.

Closes #80
2021-07-03 01:45:02 +02:00
Konrad Beckmann
e79c4fab0b Commit settings when going to sleep 2021-07-03 00:42:02 +02:00
Konrad Beckmann
b9f8d23d76 Lower the default volume to avoid brown outs when powered through USB 2021-07-02 12:36:23 +02:00
Konrad Beckmann
4be407159f emulators: Render frames and pause on power resume
When the user presses the power button from the off
state, the last played game will load. A few frames
will be rendered and the emulator will be paused.

Closes #10
2021-07-01 21:02:16 +02:00
Konrad Beckmann
1b1c5afb24 update submodule and match odroid_settings_StartupFile_get/set 2021-07-01 00:55:21 +02:00
Konrad Beckmann
559e2fc6ec Resume last played game when booting
Closes #38
2021-07-01 00:24:01 +02:00
Konrad Beckmann
95520b8cd2 odroid: Fix FPS/skip/busy counters 2021-06-30 23:22:11 +02:00
ludo
00dd5bb3ed - Add all coleco keys using gw combo keys
GW Key       : Coleco
 Game         : 1
 Game + Up    : 2
 Game + Left  : 3
 Game + Down  : 4
 Game + Right : 5
 Game + A     : 6
 Game + B     : 0
 Time         : #
 Time + Up    : *
 Time + Left  : 9
 Time + Down  : 8
 Time + Right : 7
 Time + A     : 6
 Time + B     : 5
2021-06-30 00:21:15 +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
bzhxx
b30d09365c GB/GBC : add LZ4 ROM compressed support (#91)
* 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>
2021-06-25 09:10:30 +02:00
Konrad Beckmann
a3149424f5 pce: Convert to spaces 2021-05-24 14:11:58 +02:00
Konrad Beckmann
5db4adc40f Increase audio level with a factor 2
Sound will be twice as loud now.

This may lead to a brownout if the battery isn't connected.
2021-05-24 14:09:43 +02:00
bzhxx
8a4ede05c1 nes: Add LZ4 compression support (#86)
Co-authored-by: Konrad Beckmann <konrad.beckmann@gmail.com>
2021-04-26 21:12:29 +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
Konrad Beckmann
4b0444b7b4 Add menu entry to power off the unit 2021-02-15 15:24:21 +01:00
Scorp0rX0r
0e2edb09d2 Fix LCD init and merge resume support 2021-02-07 16:36:09 +01:00
Jan Dumon
c8c7c6cb35 Increase speed of keeping keys pressed 2021-01-22 17:43:03 +01:00
Jan Dumon
aab0a71eb9 When keeping pressed repeat directional keys in menus 2021-01-21 06:36:35 +01:00
Jan Dumon
eecbcd6a0a smsplusgx: fix indentation and remove obsolete code 2021-01-21 06:36:06 +01:00
Jan Dumon
cfd1a4cc37 smsplusgx: use correct blit function 2021-01-21 06:36:06 +01:00
Konrad Beckmann
a4a0602527 smsplusgx: Divide volume factor by 2 to prevent overflow in stereo mixing 2021-01-19 09:42:52 +01:00
Konrad Beckmann
6932a5f341 Improve audio volume calculation 2021-01-18 21:31:34 +01:00
Konrad Beckmann
7ce42520d6 Move headers to more sensible places 2021-01-12 23:49:30 +01:00
Jan Dumon
81e3822edf odroid_input: implement odroid_input_wait_for_key() 2021-01-12 09:52:54 +01:00
Konrad Beckmann
c6014e0bd9 retro-go: Update submodule (gb, nes fixes) and fixup 2021-01-11 12:10:05 +01:00
Konrad Beckmann
0d9d7605e7 nes: Update submodule and adjust integration 2021-01-11 11:22:26 +01:00
Franz Levin
bc61c642b1 battery: Added battery status 2021-01-11 02:30:22 +01:00
Jan Dumon
b656959c4d Integrate smsplusgx 2021-01-08 16:27:21 +01:00
Jan Dumon
00e5d9a25c Added a watchdog to avoid power-cycles when things go wrong 2021-01-08 14:28:48 +01:00
Jan Dumon
0b553b87da Load emulators from flash into memory
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.
2021-01-04 17:20:48 +01:00
Raúl Mora
5ef7292aa5 GUI updated similar to the Famicom Classic Mini title selection screen 2021-01-04 14:02:45 +01:00
Konrad Beckmann
f91e20153b Add unaligned mempcy fix 2021-01-02 21:28:28 +01:00