Jump to content

Photo

Wizard of Wor star field


14 replies to this topic

#1 tschak909 OFFLINE  

tschak909

    Stargunner

  • 1,844 posts
  • Location:USA

Posted Fri Jun 9, 2017 6:17 AM

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

 



#2 Kiwi OFFLINE  

Kiwi

    Stargunner

  • 1,409 posts

Posted Fri Jun 9, 2017 6:54 AM

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.



#3 nanochess OFFLINE  

nanochess

    River Patroller

  • 4,894 posts
  • Coding something good
  • Location:Mexico City

Posted Fri Jun 9, 2017 9:09 AM

I saw a while ago that Team Pixelboy has the game fully ported by now http://www.teampixel...zard_of_wor.php

 

It would be nice if Pixelboy could publish a video of it.



#4 tschak909 OFFLINE  

tschak909

    Stargunner

  • Topic Starter
  • 1,844 posts
  • Location:USA

Posted Fri Jun 9, 2017 1:38 PM

oh that #$(#@%@ figures.

 

:(

 

I guess i'll take a crack at CP-1600 assembler and do an INTV port.

 

sigh.

 

-Thom



#5 Vectorman OFFLINE  

Vectorman

    Chopper Commander

  • 239 posts

Posted Fri Jun 9, 2017 1:53 PM

I saw a while ago that Team Pixelboy has the game fully ported by now http://www.teampixel...zard_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? 



#6 artrag OFFLINE  

artrag

    Dragonstomper

  • 707 posts

Posted Fri Jun 9, 2017 2:15 PM

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 by artrag, Tue Jun 13, 2017 3:55 AM.


#7 GroovyBee OFFLINE  

GroovyBee

    Games Developer

  • 9,736 posts
  • Busy bee!
  • Location:North, England

Posted Fri Jun 9, 2017 2:20 PM

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 :lol:).



#8 tschak909 OFFLINE  

tschak909

    Stargunner

  • Topic Starter
  • 1,844 posts
  • Location:USA

Posted Fri Jun 9, 2017 2:37 PM

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



#9 GroovyBee OFFLINE  

GroovyBee

    Games Developer

  • 9,736 posts
  • Busy bee!
  • Location:North, England

Posted Fri Jun 9, 2017 3:09 PM

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.

#10 tschak909 OFFLINE  

tschak909

    Stargunner

  • Topic Starter
  • 1,844 posts
  • Location:USA

Posted Fri Jun 9, 2017 3:14 PM

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



#11 Tarzilla OFFLINE  

Tarzilla

    Stargunner

  • 1,903 posts
  • Huh?
  • Location:Alberta, Canada

Posted Fri Jun 9, 2017 3:28 PM

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 ;)

#12 Tarzilla OFFLINE  

Tarzilla

    Stargunner

  • 1,903 posts
  • Huh?
  • Location:Alberta, Canada

Posted Fri Jun 9, 2017 3:33 PM

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.

#13 Electric Adventures OFFLINE  

Electric Adventures

    Chopper Commander

  • 162 posts
  • Location:Tasmania, Australia

Posted Tue Jun 13, 2017 12:46 AM

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.



#14 artrag OFFLINE  

artrag

    Dragonstomper

  • 707 posts

Posted Tue Jun 13, 2017 4:00 AM

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 by artrag, Tue Jun 13, 2017 4:01 AM.


#15 Electric Adventures OFFLINE  

Electric Adventures

    Chopper Commander

  • 162 posts
  • Location:Tasmania, Australia

Posted Wed Jun 14, 2017 12:32 AM

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.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users