Thoughts from watching the stream.... If people do not consider the credit display sacrosanct, I can very easily have the left spinner counter populate the credit display, and the right spinner counter populate the ball in play display.
I did indeed spot the bug where the timer fuzzed out for the card changes. Speculative that it was caused by the lack of thread space to run (the game can only process so many switches, and the timed routines are seen by the OS as virtual switches.... so it probably just discarded them. Physical switches take precedence in processing, and I think the columns are processed 0-4, then the virtual columns 5-7.) The thread itself is responsible for resetting its own timer, so if it expired and never ran, it would never try again (until the next ball, where the timer gets an initial setting by the ball launch routines.)
I think the timer for the triple card lighting is almost exactly what I was going for - it's a carrot for fast react flippers to try and get the triple, vs. the hold and shoot people. I will make it very slightly longer in the next rev so you have a chance to at least get something, but it'll help train you in getting that shot off quickly. Almost all the code I write for games includes some variant of this fast react rule somewhere.
Now, the bugs that you didn't spot but I did:
[1]
Triple was lit and left spinner rip into the saucer, triple expired as it should and turned the card to its previous value, but then it changed back into a triple. I think something might have overflowed into that timer and it's very possible the stock code uses the spinner display timer but doesn't have a routine attached to it (the saucer timer would be the suspect here). Not an issue since I can use another timer instead (there's about 8 free timers in big game). (The saucer uses a timer but there's no virtual switch code attached to it.)
The saucer should actually pause until all the spins are completed. This didn't happen... the saucer would score while the spinner was lazily spinning a couple times at the end. This is stock behavior, though, since a counter wasn't envisioned here. I was watching the spinner count and the score very carefully a couple times to make sure the spinner score was adding in unison with the counter - there's no way it really couldn't because the spinner code is literally now:
spinner entry->count the spin->determine if score is 200/2k (lamp lit) and score it.
[2]
The bonus resetting on the next ball, shows all your bonus then clears it as it launches the ball. It should be a little cleaner and not even show what you HAD. It's sloppy the way it ended up.
[3]
Reported as a bug but can't actually be one - the lack of lighting on the 3x lamp. Proven when you went into lamp test and it wasn't lighting.... the lamp test portion of the code just lights every single lamp. Also, when you earned the 3x and it paid it out, the code knew the 3x was lit since that's actually how the game knows to score 3x, just from the status of the lamp. There's no separate counter for this, so your lamp/led, socket, etc. is in play here.
[4]
Spins stayed on display after a quick drain until next ball start. Spins disappeared after a quick drain on last ball to match display.
[5]
There is a possibility that the bingo line bonus is NOT working as intended. Can you double check this? Dips 25 and 26 should be off.
I was pretty concerned something was wrong with the free play/credit display as you kept getting credits, however looks like you have your replay levels set to 30k, 40k, 50k with your knocker disconnected. Thankfully the 99 credits stuck as the "max" and didn't rollover to 00 which is what used to happen with sloppy coding. However, not a bug since I watched your score carefully to see the 30k start (most people set it to 10k when they do this)
[6]
You drained once with the triple cards lit - next ball, the triple card was still lit (but changed immediately on entry into the top lanes). This was actually pretty lucky you didn't get a random result as the card counter likely was set to an invalid value. This might also be related to the saucer triple re-light, if it turns out to not be the timer (which I'm almost positive it can't be but have to double check.) Although, the 'next value' in the card sequence is where I stuck the triple card data, so if the counter overflowed from 7 to 8 (it should never beit might have pulled the data from there. I'll double check that as well.
[7]
Not a bug and you didn't mention it, but the match display at bootup shows the version # of the software. '04' in your case. Ed's game has '05', and the next revision will be '06'. I skip the decades (10, 20, etc.) so it's not confused with the match display. I do this on all my software mods.
Planned updates:
5x is already in play, Ed Owens has that for his greyhound conversion game. His rom also has the triple card timer doubled but that's going to be nerfed in rev 6, I'm going to change the triple factor from $60 to $65 or maybe $70. He's testing this rev 5 this weekend.
Rev 6 will have the 5x if it's working and the following changes and possibly others:
1) spinner sanity re: drains/game over.
2) bonus display next ball fix
3) slightly longer triple timer
4) switches that change the cards will also reset the auto card timer (actually, it will just increase it a few ticks, this will both delay the NEXT card change very slightly, and also take care of the bug you ran into, at least if it happens again, the next card change will start the sequence again).
5) triple lit quirks will be quashed
6) Saucer and outhole will wait for spinner(s) to finish before counting bonus/big game letters.
7) Game over will wait until spinner to finish (should be taken care of by the outhole routine until you tilted)
Speaking of tilt, what happened when you tested it with the spinner display? Did it leave it and just time it out? I can see a timeout sanity check needing to be added for the spinner display - it's the same type of timed virtual switch that the card change is, and if it gets missed.... you got a very strange # on the display (at least until the next ball or spinner rip)
You had the Z card once lit with X as the pattern and it gave me a goofy idea to make the bonus multiplier match the card symbol - you got X on X, you got Y on Y, Z on Z.... it would have been neat in 1980 if they had actually done if this way. The way it's done stock is fine though so I'm not going to change that.
Finally, last mod will be
Game will autodetect if its running on a Weebly board, and if so will add top spin counts to the high score table, and possibly add in either a 'low score to date' (I have this on my night rider and it's hilarious to reset it before a party and award someone the low man of the night award), or keep track of 4 high scores. There's not a lot of room left in the rom to do this though unless I also take advantage of the expanded rom on that board - but then Andrew can't ship an extended rom variant with his board since I think the combo rom only can switch in 2x2732 sized images.