Commit Graph

408 Commits

Author SHA1 Message Date
cracyc
c2c61bf29c hiscore.dat: fix renamed sets 2024-03-18 09:03:13 -05:00
Vas Crabb
59cbd883f8 sega/sega_beena.cpp: Hooked up barcode cards.
Systems promoted to working
---------------------------
Sega TV Ocha-Ken [QUFB]

Software list items promoted to working (tvochken.xml)
------------------------------------------------------
TV to Ocha-Card: Ocha-Ken 'Ho' to Seikatsu [Vas Crabb]
2023-12-14 13:14:26 +11:00
Vas Crabb
6e60af32c1 sega/sega_beena.cpp: Added basic book page display.
sega_beena_cart.xml: Put page scans in individual data areas.

frontend/mame/luaengine_mem.cpp: Added a raw read function for memory
regions.

plugins/layout: Added bitmap classes to layout sandbox.
2023-11-04 00:37:48 +11:00
cracyc
94bf1367ad hiscore.dat: fix renamed sets 2023-09-21 18:01:59 -05:00
hap
c13ec72934 plugins: enable layout plugin by default 2023-07-31 11:04:49 +02:00
GregWeil
93771fee59 plugins/hiscore: Fixed detection of software item lines, and added high score support for Mega Drive Sonic Spinball. (#11282) 2023-07-07 05:49:56 +10:00
cracyc
76e5e89fed hiscore.dat: update changed sets 2023-06-23 19:10:39 -05:00
Vas Crabb
b67b969bf0 -Improved some Lua APIs:
* Moved several machine lifecycle callbacks to the notifier/subscriber
  model.  The old callback registration model is still available for
  them for now, but prints a deprecation warning.
* Added pre-save/post-load notifications.
* Use a single allocated timer rather than one anonymous timer per
  waiter.  Waiters no longer prevent saved states from being loaded.
* Clean up outstanding waiters on stop or state load rather than just
  leaking them.
* Started documenting parts of the emulator interface object that should
  be relatively stable.

-imagedev/avivideo.cpp: Fixed an object leak on unload.  Also changed
 some other media image devices to use smart pointers.
2023-04-07 06:20:40 +10:00
Vas Crabb
5f97af903c -Lua engine: run everything in coroutines. (#11019)
* This lets you use emu.wait(...) directly without mucking around creating coroutines.
* Allow emu.wait to accept an attotime argument.
* Added a couple more wait helper functions.

-emu/profiler.h: Actually use scope-based profiling helpers.
* This makes the comment at the top of emu/profile.h less dishonest, and makes it easier to write exception-safe code.
* Got rid of some do { ... } while (0) loops that only existed so break could be used like a goto.
2023-03-25 05:53:58 +11:00
Vas Crabb
00f317b3d3 -ui/menu.cpp: Don't pass IPT_UI_BACK event to the implementation when dismissing the menu.
-plugins/autofire, plugins/inputmacro: Don't be so eager to create empty settings folders.
2023-03-23 03:39:54 +11:00
Vas Crabb
ab6a4f1b94 plugins/data: Use local sqlite3 library variable. 2023-03-13 05:51:22 +11:00
Vas Crabb
f2a5f52526 Lua: Be more strict with concurrency and multiple contexts. 2023-03-08 04:09:22 +11:00
Vas Crabb
6dea565343 plugins/console: Fixed tab completion after linenoise update.
* Can now cycle through candidates by repeatedly pushing Tab.
* Also cleaned up Lua thread context object a little, and made it
  possible to pass any Lua object as a status value.
2023-03-08 03:18:21 +11:00
Vas Crabb
27fc200678 Tie up a few loose ends:
* msx2_flop.xml: Fixed a couple of Japanese titles.
* plugins/layout: Added a couple of things to the layout script sandbox.
* Tidied up Hyper Neo Geo 64 code (srcclean etc.).
2023-03-08 00:16:47 +11:00
Vas Crabb
8384223ac8 Updated forked linenoise to latest upstream.
This removes the need to force it to build as C++, and adds proper UTF-8
support for Windows.

Since this is a fork of linenoise, there's no hope for getting
lua-linenoise to sync with it upstream.  I made the bare minimum changes
to keep it working, but didn't add bindings for new functionality (e.g.
multi-line editing).
2023-03-07 05:33:37 +11:00
Vas Crabb
d4589e0b29 Input refactoring:
osd/modules/input, emu/inpttype.cpp: Made most default joystick
assignments supplied by input modules.  Input modules take available
controls into consideration when generating default assignments.

emu/inpttype.ipp: Added a separate "Back" UI input separate from Cancel.
You may want an easier to hit combination for moving to the previous
menu than for exiting or cancelling input.  They both default to Escape.

emu/inpttype.ipp: Added a UI Help control.  Currently only used by
analog inputs menu

emu/inpttype.h: Moved I/O port field type enum to its own header and
sorted UI controls so they appear in a more logical order.

ui: Don't use UI Select to restore defaults - people should be getting
used to the UI Clear input by now.  UI Select cycles multi-value items
instead.

ui/inputmap.cpp: Don't use immediate cancel to cycle between clearing
and restoring default assignment (use UI Clear instead).

osd: Reduced the number of files needing to include the dreaded emu.h.
Got some implementation out of headers.
2023-02-18 06:18:45 +11:00
npwoods
13910382a5 osd/modules/file: Don't magically substitute environment variables when opening files. (#9859)
* util/options.cpp: Added option types for single and multiple paths.
* util/options.cpp: Substitute environment variables in values from defaults and INI files.
* ui/dirmenu.cpp: Removed hard-coded list of multi-path options.
* plugins: Don't substitute environment variables in path options.
2022-12-17 06:03:59 +11:00
cracyc
a0429f8bac hiscore.dat: Updates [Leezer] 2022-11-20 10:28:03 -06:00
Vas Crabb
16e709ad82 plugins/autofire, plugins/inputmacro: Use clear_value to release I/O port fields. 2022-11-06 02:46:39 +11:00
Vas Crabb
bdfdbd8796 plugins/cheat: Overwrite existing hotkeys if all hotkeys are cleared (fixes GitHub #10387). 2022-10-04 14:19:38 +11:00
cracyc
867167bb97 hiscore.dat: resort and set changes 2022-09-20 08:48:59 -05:00
mdeslaur
f3b42285fc pacman.cpp: Added Miss Packman Plus. (#10201)
New working clones
---------------------
Miss Packman Plus [Marc Deslauriers]
2022-08-13 01:09:13 +10:00
hap
c860119abb hegenerglaser/*: add clickable element to internal artwork that presses 2 buttons at the same time where applicable 2022-07-26 15:55:17 +02:00
Vas Crabb
df65b00ed4 plugins/data: Fixed story.dat errors; virtual.flt: Use glob pattern. 2022-07-02 03:11:23 +10:00
Vas Crabb
923ef2c25d -plugins.data: Reworked the code substantialy.
* Use the plugin data folder for storing the cache.  The history folder
  may be read-only or shared with different configurations.
* Don't create the cache database or surrounding folder if there's
  nothing to store in it.
* Actually use prepared queries multiple times rather than always
  destroying them after a single use.
* Added proper error checking for most database operations.
* Improved query performance by avoiding outer joins and table scans.

-bus/nubus: Made the Macintosh Display Cards map the blue channel to
 white with monochrome monitors.  Also added logging for PLL
 configuration to help debug how CRTC and RAMDAC clocks work in the
 future.
2022-06-25 04:57:24 +10:00