Re: [stella] Rubik Cube 3d

Subject: Re: [stella] Rubik Cube 3d
From: Christopher Tumber <christophertumber@xxxxxxxxxx>
Date: Mon, 23 Dec 2002 13:36:49 -0500
>does anybody have an idea how this was programmed?

Probably much the same way as Big Dig. Big Dig uses Playfield graphics to do 7 different colours horizontally, the Rubik's Cube is also doing 7 colours per scanline.

Big Dig's display kernal (for the blocks) basically consists of:

      lda $c0
      STA COLUPF
      lda $c1
      STA COLUPF
      lda $c2
      STA COLUPF
      lda $c3
      STA COLUPF 
      lda $c4
      STA COLUPF
      lda $c5
      STA COLUPF
      lda $c6
      STA COLUPF
      lda $80
      STA COLUPF             

However the Rubik's blocks look a little smaller so they may be putting the routine into RAM and presetting the Immediate Mode address:

      lda #$10
      STA COLUPF
      lda #$20
      STA COLUPF
      lda #$30
      STA COLUPF
      lda #$40
      STA COLUPF 
      lda #$50
      STA COLUPF
      lda #$60
      STA COLUPF
      lda #$70
      STA COLUPF
      lda #$00
      STA COLUPF
      RTS

Since there's nothing else going on, there may be enough time between the end of drawing the right edge of the cube and the end of the horizontal blank to prime the RAM routine for the next scanline - LDA $ZeroPage/STA $ZeroPage x 7 = 42 + JSR/RTS = 54 cycles.

Yeh, should be possible....


Chris...

----------------------------------------------------------------------------------------------
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/


Current Thread