VOGONS


First post, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

Let me tell you about some of the other tricks that i've been doing
with pinball fantasies (maybe it works with other pinball games too)

I have successfully integrated dosbox with a set of LEDs on my parallel port. Then I sincronized the flashing of the LEDs with the flashing of some of the playfield lights. I got it sincronized with the P A R T Y lights for example.

How I did it:

pinball fantasies uses the color pallete to flash the lights. Then I have put some aditional code on the VGA emulation so that everytime the software asks the VGA to change a pallete attribute, I check whether the color number is one of the numbers in a table that I maintain. If this color number corresponds to a particular light, then I send a proper value to the parallel port to turn on or off the corresponding light (according to my table of lights versus color indexes).

This way it is possible to make amazing things like a real pinball table replica with the lights flashing in sync with the virtual one.

Reply 1 of 11, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

And I have already figured out a trick for doing the other way: sincyng real sensors with the virtual ones.

And also a way of "exporting" the contents of the dot-matrix-display to a real one plugged to the PC

This way it is possible to have a working real pinball machine, using dosbox running pinball fantasies as its firmware

Reply 2 of 11, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

Another trick that I ve made is the no-scroll patch for pinball fantasies.

Miki Maus have addapted it to other pinball games like Pinball Dreams 1 & 2 and Epic pinball and Psycho Pinball .

I would like to get all these tricks together in a "Pinball Enhancement Pack for dosbox" I think that it's an interesting name 😀

I am sure that other tricks are possible. Anyone interested in helping ?
I am challenging you all to come up with good ideas of how to improve (in hacky ways) pinball games by modifying the emulator.

Reply 3 of 11, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

I am challenging you all to come up with good ideas of how to improve (in hacky ways) pinball games by modifying the emulator.

If you dont know how to implement it , that's ok. Simply tell what would you love to see in your favourite pinball game (and we'll see if it is possible to implement)

PS: Off course that someone could make this kind of trick with any kind of emulated software. It is not specific to pinball games. If you want, start your own "Alternative Application Enhancement Pack" 😀

Reply 4 of 11, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

How did you accomplish that? Are the party lights always located in the same memory block, which you read datafrom and send to your leds?

PFant uses one color pallete index for each light, then when it wants to turn a light on or off it simply alters the rgb of that color in the pallete. I doesnt redrw the lights everytime. I it did that, it would require a lot more cpu ciclies, an so it wouldnt run nice in a 286. And probably the no-croll trick wouldnt be possible too because the game would probably not draw in an area that is not visible to the player (and that the noscroll makes visible now that we have a higher resolution to work in)

Reply 5 of 11, by halfgaar

User metadata
Rank Newbie
Rank
Newbie

There is a problem with such a patch set; people would have to install a second dosbox. And, installing in Linux distro's becomes difficult, since they will (probably) not include a seperate package for pinball-dosbox. In other words, maintaning it, source and compiled binaries, is quite difficult.

Reply 6 of 11, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

well... my primary intention is in making funny/useful/amazing hacks. I dont care whether it will be packaged for distros or not. It is more likely to become just a set of interesting patches that are available for those who like it so that they can apply it and compile it as they desire.

By now, I am just talking about brainstorming. I want to hear from pinball enthusiasts what would they appreciate to have in their favourite games.

Some time ago, I was playing Pinball Fantasies and I noticed a bug in it. (yes, a bug in that wonderfully coded game!) I am trying to figure out a way of fixing this bug through a hack, just for fun.

This will obviously be a "corner case not so exciting" patch (except for the one who fixes it - probably me 😀 !) but I am sure that other more exciting things can be done, too. Stuff like the no-scroll patch or like the "real pinball machine using dosbox as firmware"-hack.

I am waiting for ideas 😀 And while I wait, Im trying to fix this pfant bug...

Reply 7 of 11, by halfgaar

User metadata
Rank Newbie
Rank
Newbie

Well, there is this bug in Pinball Psycho. Or, at least I think it's a bug. When you start a table, you have one extra ball sidelight lit. When you're out of balls (or quit) and start again, you don't have this extra ball lit anymore. You have to start and quit a different table first.

The main table, psycho, doesn't suffer from this bug though. You have the extra ball lit every time there.

Reply 8 of 11, by felipe.sanches

User metadata
Rank Newbie
Rank
Newbie

When hacking is involved, we can take a minute, a week or a year to find a solution. Its unpredictable. Sometimes we spend too much time looking at disassemblers and at the end we cant figure it out...

I ve never played psycho. I will get this game to work here and I ll try to observe this bug that your telling me.

Do you code, Halfgaar?

Reply 9 of 11, by halfgaar

User metadata
Rank Newbie
Rank
Newbie

I can code, but only in high level languages (Java, Ruby, SQL). I have no/hardly any experience with C(++), bytecode, (dis)assemblers or other low level stuff. Hacking dosbox is somewhat out of my league...

Reply 10 of 11, by halfgaar

User metadata
Rank Newbie
Rank
Newbie

BTW, you don't have to try real hard to fix this issue for me. I can live with it as it is. I just thought I'd mention the bug. Also, I prefer to run one dosbox, installed by my package manager. Having a seperate pinball dosbox binary is something I'd rather not have.