Repository navigation
Libvpxhost - #6
Merged
Merged
Conversation
Brings in the schema drift exemption for boards[].virtual, which no published game export uses yet. The "Schema drift across the stack" job has failed on it since the pin moved to 98583c99; nothing in the library itself changes.
Says where to report a vulnerability privately and what is in scope, so reporters do not have to open a public issue.
vpinball: upstream master, which now carries the Serum plugin change (frame copies instead of libserum's buffers, identify poll interval as a setting) as cf4fe0b7, so the pin no longer needs a fork-only commit. pinmame: nvram_saves with upstream master merged in. The two have to move together: upstream's PinMAME plugin now calls PinmameSetGameDef, which the previous pin predates, and the plugin does not compile against it.
The plugin bus moves to github.com/PPUC/libvpxhost, shared with the ColorizingDMD editor, pinned as LIBVPXHOST_SHA and built as a subproject against the same plugin SDK. The plugin folder lookup stays here (src/PluginDir). With it, overrides of folder and file settings reach the plugins. They were ignored before, so PinMAMEPath, SerumPath, VniPath, PUPFolder and AltSound's Folder fell back to the plugins' defaults. The script and logging APIs handed to plugins now carry version 1.
The lamp test walks lamp numbers, which on an LED string is an order nobody can follow along: lamp 11 may be the tenth pixel, lamp 12 the ninth. When a string misbehaves -- dark after one pixel, a pixel that never changes -- the question is which position it is, and that needs a walk that goes LED 0, 1, 2 down the string. --led-string-test (BenchTest.LedStringTest, and "LED string test" in the tools menu) does that for every string on a present board. A board lights LEDs by number, never by position, so each step drives the lamp, flasher or GI string the LED is assigned to and names the other LEDs that light with it. An unassigned position still takes its turn and stays dark, so the operator's count does not drift. Flashers are pulsed, and high power stays off: the board lights its LEDs without it, and a real flasher sharing the number is better left dark. Before walking, it lists assignments beyond a string's `amount`, which the board never drives. The Dirty Harry export has six of them. libppuc keeps neither the string length nor an LED's position, so ledStripes is read here, as emGame already is. The ordering lives in LedStringWalk, free of yaml-cpp, and is covered by ppuc_tests.
PinMAME numbers the GI strings from 0; the game config, libppuc and the board firmware number them from 1, and libppuc's SetGIState() drops anything outside 1..5. The value was passed straight through, so GI 1 was dropped, every other string lit its neighbour, and on WPC the fifth string was never driven at all. In attract mode, where all strings are on, only the fifth one looked broken. The plugins still receive PinMAME's own numbering, which is what VPX media packs are written against. The debug line now prints the number the config uses.
Boards light LEDs only by the lamp, flasher or GI number assigned to them, so a flasher on three LEDs lit all three and a GI string lit entirely for each of its LEDs. For its own session the test now hands libppuc a temporary copy of io-boards.yaml in which every LED of every tested string is a lamp of its own, numbered clear of the lamp matrix and lamp-type PWM outputs, with flashers, GI, segments and effects removed. Each LED lights in its configured colour, unassigned ones in white. Board configuration lives in RAM, so the next normal start restores the real one. The tools-menu entry is removed: the boards cannot be reconfigured while a game runs, so it could only offer the grouped behaviour.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.