Tuesday, August 7, 2012

new Cactus Canyon rom in freewpc

The last weeks I've also spent a lot of time programming in FreeWPC.
I'm working on new rules for Cactus Canyon.

I really love this pinball machine. It has a great playfield layout (some hard shots, some easy shots, I love the flow of the ramps), great theme, excellent artwork, ..  Everything is great on it except the game rules;
On default settings the game is too easy (my 6 year old daughter can even get wizard mode sometimes !), you really have to put it to extra difficult or adjust some features yourself to make the machine challenging enough.
The rules are also pretty basic, a lot more could have been added.

Cactus Canyon was the last WPC-95 game Williams produced before starting with Pinball2000. Therefor not a lot of machines were produced, it was only meant to be a 'filler' game to keep production lines going. Production was stopped as soon as P2K machines could start.

In the game rules it's most obvious that this game was not complete. Rules are fun but shallow. You really get the impression more could have been implemented, as there are 3 save polly inserts on the playfield but only 1 save polly mode (which is started whenever you complete 3 shots on either of the 3 ramps).
The instruction cards make mention of a 'Bionic Bart' but that mode is not programmed in the game.
Some small details also show there was no time to fine-polish this software, when you finish the wizard mode there's nothing special (no spectacular sound), there's no real match mode, ..

Like I posted a few weeks ago, starting to program in FreeWPC was on my todo-list for a long time already. Now I've started and I'm going along on full speed :)

The advantage of using FreeWPC is that it compiles into a 'real' rom that anyone can plug into their Cactus Canyon pinball machine, without having to buy other expensive hardware.

Programming goes better than expected, although I sometimes lose a lot of time on stupid things :(

FreeWPC is a whole framework, you get to program game rules but the environment is the base OS for the pinball machine and does a lot of things for you.
Display definitions (deffs) that are in the machine file need to exist in the other files you compile, or you'll get a linking error. Same for callset_invoke(), these need a matching callset_entry() or the linking will fail (without giving any indication of what is missing).
I wasted many hours already with these errors.. It's mostly because of the way I program.
For instance I made a modes.c file that's almost completely ready - when you made 3 shots to the left ramp it'll do a callset_invoke() to start the mode for that left ramp, same for the other ramps.. but not all modes have been programmed yet, so the linking fails :(

Whitewater missing mountain mod

Been a while since I posted something here, which means I'm busy with a lot of things;
First made some changes to the website. Dropped a few categories from the homepage and other index pages, decided I will not maintain these anymore. These are pinball in Belgium, the agenda of shows and the things I learned (which was updated bi-weekly).

I'm busy shopping my Attack From Mars pinball machine. Playfield has been removed from the game, everything on top is removed. Now have to remove the bottom assemblies and clean everything.
Cabinet has been sanded, ready to  put new cabinet decals on.
I had shopped this machine when I bought it (7 to 8 years ago) and it's amazing how dirty it is and even how worn some rubbers were. The slingshot rubbers almost broke, theywere so thin !


I'm also busy on making a new Whitewater missing mountain mod.

If you've ever seen the whitewater pinball machine, you know there are mountain shaped plastics in different places. There's a large ramp that's on the left side of the playfield which has a U-shaped turn on the top left of the playfield. Underneath there's nothing, it's completely open, showing the back/side black wood of the machine and an exposed microswitch. Not a nice look.
Someone else had made a mod for this years ago, he had made a new mountain plastic that fit inside this hole.
It made the machine look so much better, it really belonged there;

The mod isn't for sale anymore, so I decided to make my own mountain plastic.
Last week made the base shape using modeling clay. Now it was dried out enough, so yesterday evening I finalized it, build up onto this shape adding the details. I tried to make it look like the other mountai plastics, although that was not easy to do, I'm not a sculptor. Now it has to dry again for a few days.
Then I will make a silicone mold out of it and cast a mountain.
That one I can paint and then I'll see how good it is.. (the model now is in white clay so it's not easy to see it shape correct and predict how it will look painted, as the dark brown paint will stay into the deeper parts).

Thursday, June 28, 2012

FreeWPC installation

Been busy a few hours this week installing FreeWPC.

The P-ROC system got a lot of attention last year as the way to make new rules for existing pinball machines, but you have to buy special hardware for it.

The FreeWPC project exists longer but is less known. It's a way to create your own rom and make new rules for a WPC pinball machine (and soon maybe other brands and models too..) but no extra hardware is needed.. what is created is a valid wpc rom file that you can burn on an eprom and install in your WPC cpu.

Unfortunately it's not easy to do.. I've been following this project for 2 to 3 years now, was interested but never put any real time in it. Once I've tried to install it, but didn't succeed. I did read some manuals/some lines of code, but didn't continue.

Last year someone took the time to create a good installation manualn documenting all the steps needed to setup the whole system. I'm almost finished, then I'll validate this setup by trying to compile a new rom and test it in pinmame/visual pinball.

If that works well, I'll try to program new rules myself. Already have one game in mind for which I've spent time what new and improved rules it should have.

If anyone has experience with assembly, C, programming embedded systems, .. and wants to create new gamerules for WPC games, please join the google discussion group about freewpc and have a look..


Update: managed to get everything installed this weekend. Was able to compile the Corvette rom and test this in pinmame / visual pinball.
Next step is to declare the machine layout of the new game. Then just compile an 'empty' rom for it, without any rules defined. Just try to compile and get it working. Then develop further, try to learn the freewpc instructions and try to add things.. little steps, one by one..
My goal is to always create a new rom with just one part in it, ie light a few lamps. Then shoot a pinball, do 1 effect when it hits a specific target, ..  and when all simple parts are done then try to put it all together.
We'll see how far I get..

Monday, May 14, 2012

RIP Leon Borré

Can't find the words to describe how sad I am. Leon Borré of www.flipper-pinball-fan.be passed away this weekend.

Probably everyone in the pinball community knows him or has at least heard of him or his work. He was always happy with a positive attitude towards life, always making the best of it. It was always a pleasure seeing him at a show. He was very helpful and put many hours in helping everyone that emailed him, came to his house for repairs, ..
Since a few years we knew this day would come but tried not to think about it..

I remember the first day I came to his house with a broken Lectronamo cpu to repair. Was amazed by his collection of machines, his knowledge and ingenuity.
He taught me the basics of pinball repair, I explained him about homepages and translated the first articles he put online.

Just a few months ago I had to repair a Bally solenoid driver board and took out test-pcb I had made back then, like he had described on his site. Was amazed by the date I had printed the documentation about it - back in 2000.
12 years have passed so fast.

RIP Leon, thanks for all you have done and the good memories.
We miss you.