New game in progress: Q*Bert 2009
Moderator: Moderators
Progress update:
Slower than I'd have wished for, as work and home life have a habit of getting in the way of fun (i.e. this!)
However, some new stuff has been put in:
Oh some stuff that is not visible right now, but code is in the game:
I promise more frequent updates, if you can take the buggy beta code
An updated binary PRG is available here
Slower than I'd have wished for, as work and home life have a habit of getting in the way of fun (i.e. this!)
However, some new stuff has been put in:
- Several optimisation passes on sprite code. Can now display 6 sprites with acceptable speed. Need to get to 7 for this game though, so optimise again...
- Joystick controls now wired in. You can move Q*Bert around.
- Tile painting when Q*Bert lands on an unpainted tile.
- Very preliminary scoring. There are bugs, but I wanted to make a start
- Disks. Q*Bert can jump on a disk and float to the top tile. Disks will animate and follow later (when I get all the 7 sprites working)
- Pyramid complete detection. Rudimentary, but working. (HINT: Press F7 to restart level)
- Addition of PAUSE function (left shift or shift lock)
- Changed cold start key to RUN/STOP
- Reduced screen height to 27 lines from 28 to cater for NTSC displays
- Sprite able to move behind playfield, this is a lot slower than moving above the playfield, but only Q*Bert needs to do this, and only when he falls off of the pyramid
- Very buggy "fall off pyramid" routine (HINT: F7 resets level)
Oh some stuff that is not visible right now, but code is in the game:
- Hi score table
- Save hi score table to disk
- Different colours for sprites, but the 8x8 cell induced bleed is currently *horrible* as I'm not double buffering the colour maps. I'll be playing with that in the near future.
- Composite sprite (16w*32h sprite made of 2 sprites), need this for Coily
- Optimise the sprite routines more
- Sound effects. (Learn how to produce more than the simple stuff I have so far)
- Try to transcribe the few jingles from the arcade Q*Bert to musical notes and then implement them on my sound player. (If anybody has a musical ear, I could sure use a hand with this! I have the WAV/MP3 samples from the original game).
- Draw some more of the characters
- Implement table based configurations for each level, controlling enemies, probabilities, bonuses, disk numbers etc.
I promise more frequent updates, if you can take the buggy beta code
An updated binary PRG is available here
- Mike
- Herr VC
- Posts: 4845
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
I'd surely like to take a shot at it. Would you care to provide a download link?brighty wrote:[*]Try to transcribe the few jingles from the arcade Q*Bert to musical notes and then implement them on my sound player. (If anybody has a musical ear, I could sure use a hand with this! I have the WAV/MP3 samples from the original game).
Greetings,
Michael
Thanks Mike. Here are two to get started:Mike wrote:I'd surely like to take a shot at it. Would you care to provide a download link?
FX_34.WAV
FX_40.WAV
I need to convert the rest from MAME SAM format to WAV or MP3, I have the software, just got to sit down and do it I'll try to zip them up tomorrow and upload the rest.
- Mike
- Herr VC
- Posts: 4845
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
This is a first approximation to FX_40 ...:
... and here's my attempt at FX_34 (sans modulation):
Code: Select all
10 DIMA(5),B(5):FORT=0TO5:READA(T),B(T):NEXT
11 V=36864:POKEV+14,8
12 FORS=1TO41:READT:POKEV+10,A(T):POKEV+12,B(T):FORT=1TO50:NEXT:NEXT
20 DATA 0,0,164,210,174,215,183,219,195,225,210,232
30 DATA 1,0,4,0,2,0,3,0
31 DATA 1,0,4,0,2,0,3,0
32 DATA 1,1,0,0,0,0,0,0
33 DATA 5,5,0,0,0,0,1,0
34 DATA 1,1,1,1,1,1,1,1
35 DATA 0
Code: Select all
1 DIMA(6):FORT=0TO6:READA(T):NEXT
2 V=36864:POKEV+14,5
3 FORS=1TO25:READT:POKEV+12,A(T):FORT=1TO100:NEXT:NEXT
4 FORT=217TO187STEP-.5:POKEV+12,T:NEXT
5 FORT=187TO217STEP+.5:POKEV+12,T:NEXT
6 POKEV+12,0:END
10 DATA 0,187,191,198,204,207,217
20 DATA 3,2,3,2,0,2,1,2
21 DATA 4,3,4,3,3,3,3,3
22 DATA 2,3,5,3,5,6,0,6
23 DATA 0
Mike, thanks for putting the time and effort into this, I've tried out your code and the resulting tunes are great!
Thanks again Mike. I'll see if I can post up a fresh download tonight with the sounds integrated. I'll also get the other tunes zipped up and uploaded, if there are any more. I have to check as there are over 40 sound effects, but few tunes.
What name would you like added to the in-game credits?
So, from analysing your code, you have 5 "notes" for the Soprana and Bass voices, which are then referenced via the later data statements and played simultaneously via the two voices. Very neat and sounds great. I'll work on adding this data into my IRQ player tonight.Mike wrote:This is a first approximation to FX_40 ...:
If I've interpreted this one correctly, a single voice this time (Soprano), with notes referenced by the later data statements, finally ending with two loops calculating a rapidly decreasing and then increasing frequency to play throught the voice for the ending sound effect. Also, sounding amazingly close to the original.Mike wrote:... and here's my attempt at FX_34 (sans modulation):
Thanks again Mike. I'll see if I can post up a fresh download tonight with the sounds integrated. I'll also get the other tunes zipped up and uploaded, if there are any more. I have to check as there are over 40 sound effects, but few tunes.
What name would you like added to the in-game credits?
Progress update:
I've spent a lot of time today shuffling memory layout around to expand from 128 user defined chars to 256. I was using 128 userdefs + 128 ROM, but I need more userdefs for the extra sprites. Got that working (well, you'll notice that the score isn't displaying at the moment, but I'll fix that tomorrow).
I now have 7 sprites on-screen at once. Speed is ok, but I'd like it to be a bit snappier, so I'm going to spend some more time optimising. The code will actually run 8 sprites simultaneously, which I've tested and it works, but too slow and I don't need that many for this game.
I've also added one of Mike's tunes to the startup sequence. It doesn't belong there in the original gameplay, but I wanted to hear how it sounded.
Revised PRG for messing about with is here
As before, there are lots of holes in the code currently, so don't be surprised if it crashes on occasion. It'll get better over time, I promise
Once again, a big thanks to Mike for encoding the music so far.
Update: Fixed the score display
I've spent a lot of time today shuffling memory layout around to expand from 128 user defined chars to 256. I was using 128 userdefs + 128 ROM, but I need more userdefs for the extra sprites. Got that working (well, you'll notice that the score isn't displaying at the moment, but I'll fix that tomorrow).
I now have 7 sprites on-screen at once. Speed is ok, but I'd like it to be a bit snappier, so I'm going to spend some more time optimising. The code will actually run 8 sprites simultaneously, which I've tested and it works, but too slow and I don't need that many for this game.
I've also added one of Mike's tunes to the startup sequence. It doesn't belong there in the original gameplay, but I wanted to hear how it sounded.
Revised PRG for messing about with is here
As before, there are lots of holes in the code currently, so don't be surprised if it crashes on occasion. It'll get better over time, I promise
Once again, a big thanks to Mike for encoding the music so far.
Update: Fixed the score display
- Mike
- Herr VC
- Posts: 4845
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
Hi,
here are the four other effects/tunes:
The first two sound more like effects. With the other two jingles I concentrated on their melodic components; their modulation, and perhaps second voice are nearly impossible to extract.
Greetings,
Michael
here are the four other effects/tunes:
Code: Select all
FX_26:
10 V=36864:POKEV+14,8
11 FORU=100TO16STEP-4:RESTORE:FORS=1TO8:READA:POKEV+12,A:FORT=1TOU:NEXT:NEXT:NEXT
12 POKEV+12,0
13 DATA 210,198,217,204,221,212,234,191
FX_27:
10 V=36864:POKEV+14,8
11 A=234:POKEV+11,A:GOTO14
12 READA:POKEV+11,A:POKEV+10,A:FORT=1TO75:NEXT:POKEV+10,0
13 IFA=170THENPOKEV+11,0:END
14 POKEV+12,A:FORT=1TO75:NEXT:POKEV+12,0:GOTO12
15 DATA 231,228,225,221,217,212,207,201,195,187,179,170
FX_38:
10 V=36864:POKEV+14,8
11 FORS=1TO19:READA,B
12 POKEV+10,A:POKEV+12,A
13 FORT=1TOB*20:NEXT
14 POKEV+10,0:POKEV+12,0
15 FORT=1TOB*10:NEXT
16 NEXT
17 DATA 183,3,164,3,183,3,195,3
18 DATA 210,3,164,3,183,3,195,3
19 DATA 215,3,215,3,201,3,215,3
20 DATA 183,2,210,2,219,2,225,2
21 DATA 219,2,225,2,232,3
FX_39:
10 V=36864:POKEV+14,8
11 FORS=1TO30:READA:POKEV+10,A:POKEV+12,A:FORT=1TO100:NEXT:NEXT
12 DATA 201,0,201,210,207,0,207,215,210,0,219,0,183,0,219,0
13 DATA 201,0,201,210,207,0,207,215,210,0,201,0,228,0
If you're so kind, credit me as Mike.brighty wrote:What name would you like added to the in-game credits?
Greetings,
Michael
- Mike
- Herr VC
- Posts: 4845
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
I've split the following discussion about the copy&paste feature of VICE into an own thread in the General Topics section.
Greetings,
Michael
Greetings,
Michael
Update:
Making progress, slowly, but progress nonetheless
. Added title screen using arcade game screen as basis
. Added hiscore screen display
. Added attract mode, but very basic at the moment
. Added level intro, but very basic at the moment
. Q*Bert dies if in same cell as enemy. Not happy with this yet.
. Q*Bert dies if he falls of pyramid. Still basic.
. Game over if all lives lost.
. Detects completed pyramid, but just goes back to title screen at present
. Added excellent graphics from Seahn/STYLE
. WIP: disks follow Q*Bert to top of pyramid. Buggy right now.
There are bugs, some known, some unknown right now.
The updated binary is
here. It requires a 16K expansion at this time.
A screenshot of Seahn's great artwork:
Making progress, slowly, but progress nonetheless
. Added title screen using arcade game screen as basis
. Added hiscore screen display
. Added attract mode, but very basic at the moment
. Added level intro, but very basic at the moment
. Q*Bert dies if in same cell as enemy. Not happy with this yet.
. Q*Bert dies if he falls of pyramid. Still basic.
. Game over if all lives lost.
. Detects completed pyramid, but just goes back to title screen at present
. Added excellent graphics from Seahn/STYLE
. WIP: disks follow Q*Bert to top of pyramid. Buggy right now.
There are bugs, some known, some unknown right now.
The updated binary is
here. It requires a 16K expansion at this time.
A screenshot of Seahn's great artwork: