tschak909 Posted June 9, 2017 Share Posted June 9, 2017 Hello, am taking a big look @ doing a port of Wizard of Wor to the ColecoVision (am in the process of drawing the level assets at the moment, have patched WoW in mame via cheat to allow me to traverse through the levels without being shot, so I can at least get the level data drawn onto graph paper and then onto newcoleco's tools) and while the logic of the game seems straightforward, am wondering what it would take to actually do one trick in particular, in the arcade, there is a starfield that is projected onto the first plane of graphics memory, on top of which the bg tiles and sprite tile planes sit... my first thought would have been to copy the character set into RAM, and then use a fixed mask to alternate between showing the starfield and not, on alternate frames...but I suspect that this will severely put a cramp into the amount of memory I will have left to keep track of game state. Does anybody have any advice? or should I just drop this one onto the cutting room floor? (along with the Wizard death level fizzing) -Thom Quote Link to comment Share on other sites More sharing options...
Kiwi Posted June 9, 2017 Share Posted June 9, 2017 Seems like the starfield is static. There is enough VRAM in bitmap mode to hold the state of 2 nametable. One at 0x1800 is default, and the second one is at 0x1C00. You can have one maze with the starfield and the level structure on 0x1800, and the one without the maze at 0x1C00. If you're programming in C. In the cv programming pdf, page 53 have screen() and swap_screen() description. New Coleco kit folder name, testscr, is an example how swap screen works. Or put_vram 0x00 or 0x11 to turn the starfield color data to color invisible/black. Use the 3 tilesets/1colorset mode of bitmap mode for quicker color cycling since you'll only be updating the color for all 3 tilesets. Color Invisible would work better since you can use the border color to color cycle the screen to make it flash. You could program a function to draw the starfield first and then load the level maze data read and ignore printing to the screen if data is 0 leaving the starfield tile undisturbed. Mixing 2 data to one screen. I would avoid using 768 bytes in RAM to hold the state of the screen. There is 32KB of ROM you can upload from the cart to the nametable without loading to RAM first since it is already addressable for the CPU to use. Hopefully this give you some ideas to help you with your project. Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 9, 2017 Share Posted June 9, 2017 I saw a while ago that Team Pixelboy has the game fully ported by now http://www.teampixelboy.com/wizard_of_wor.php It would be nice if Pixelboy could publish a video of it. Quote Link to comment Share on other sites More sharing options...
tschak909 Posted June 9, 2017 Author Share Posted June 9, 2017 oh that #$(#@%@ figures. I guess i'll take a crack at CP-1600 assembler and do an INTV port. sigh. -Thom Quote Link to comment Share on other sites More sharing options...
Vectorman Posted June 9, 2017 Share Posted June 9, 2017 I saw a while ago that Team Pixelboy has the game fully ported by now http://www.teampixelboy.com/wizard_of_wor.php It would be nice if Pixelboy could publish a video of it. That requires the SGM to play it. That's no more a CV port than a port for c64 or 32X. It's not running on the CV system at all really, more like running video through it. What about people who are interested in a CV port and have no interest in buying a SGM or SGM software? Quote Link to comment Share on other sites More sharing options...
artrag Posted June 9, 2017 Share Posted June 9, 2017 (edited) Wizard of Wor maybe could fit in a stock colecovision, but you need a mapper with megarom for storing levels and voices. And you need to cut down some visual effect. About the stars, what about using sprites? [Edit] No, it is static starfield and there are too many stats. It has to be in tiles. Edited June 13, 2017 by artrag Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted June 9, 2017 Share Posted June 9, 2017 I guess i'll take a crack at CP-1600 assembler and do an INTV port. There is no real reason why the game couldn't be done in IntyBASIC. Having said that, it has been discussed recently here, so maybe somebody is already working on it (not me ). Quote Link to comment Share on other sites More sharing options...
tschak909 Posted June 9, 2017 Author Share Posted June 9, 2017 I do NOT like Game BASICs, at all, if I were to do one, it would be in asm, as there is no C compiler. My assembler background is in 6502 and Z80, so I'd have to learn the system... -Thom Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted June 9, 2017 Share Posted June 9, 2017 I do NOT like Game BASICs, at all, if I were to do one, it would be in asm, as there is no C compiler. My assembler background is in 6502 and Z80, so I'd have to learn the system... Its a modern and efficient compiler and its syntax is not all that much different to C. It has the same loop constructs but a much more limited set of variable types. Quote Link to comment Share on other sites More sharing options...
tschak909 Posted June 9, 2017 Author Share Posted June 9, 2017 ok, i'll take a look at it. Thanks.. sorry, programmer's ego got the best of me... I'm used to proving to myself that I can cut the mustard on the metal. Apologies for being a twat. -Thom Quote Link to comment Share on other sites More sharing options...
+Tarzilla Posted June 9, 2017 Share Posted June 9, 2017 ok, i'll take a look at it. Thanks.. sorry, programmer's ego got the best of me... I'm used to proving to myself that I can cut the mustard on the metal. Apologies for being a twat. -Thom That's ok, you won't be the first one in the Intellivision forums Quote Link to comment Share on other sites More sharing options...
+Tarzilla Posted June 9, 2017 Share Posted June 9, 2017 That requires the SGM to play it. That's no more a CV port than a port for c64 or 32X. It's not running on the CV system at all really, more like running video through it. What about people who are interested in a CV port and have no interest in buying a SGM or SGM software? The SGM only adds ram and another sound chip for use by the programmer, many SGM games run on stock Coleco systems but provide enhanced features if the SGM is detected. It is not "running a video through it" by any means as the Coleco CPU, video and original sound chips are utilized. Quote Link to comment Share on other sites More sharing options...
Tony Cruise Posted June 13, 2017 Share Posted June 13, 2017 Kamshaft and I also started on a Wizard of Wor port (for the stock Colecovision) but stopped when the Team Pixelboy version was announced. Kamshaft did a good job on the graphics for our version too, which is why we switched to Berzerk. I was not aware that the Team Pixelboy port needed the SGM though, I don't see why it couldn't be done in 1k of Ram, and a 32k Rom cartridge. Quote Link to comment Share on other sites More sharing options...
artrag Posted June 13, 2017 Share Posted June 13, 2017 (edited) This was also my guess, 1KB of ram should be sufficient. I am only not sure about the rom size. I do not know how many levels have to be stored, but if you add voices, you need for sure more than 32KB. Anyway mappers exist for this. Edited June 13, 2017 by artrag Quote Link to comment Share on other sites More sharing options...
Tony Cruise Posted June 14, 2017 Share Posted June 14, 2017 This was also my guess, 1KB of ram should be sufficient. I am only not sure about the rom size. I do not know how many levels have to be stored, but if you add voices, you need for sure more than 32KB. Anyway mappers exist for this. Yes a 128k ROM cartridge can be used in a stock Coleco, the maps storage is trivial as it is based off quite a large tile layout. It's not quite like Berzerk i.e. all 65565 rooms are generated by a fix seed random function, but it's not far off that in design. The original arcade ROM is only 7 x 4k i.e. 28k in size and is written in Z80. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.