Subject: [stella] Psst! Hey, buddy, wanna buy a scroller? From: Christopher Tumber <christophertumber@xxxxxxxxxx> Date: Thu, 02 Jan 2003 17:17:19 -0500 |
A little rough, but only lightly used... This is a playfield scroller, similar to the one in Vanguard so it's a little jerky. I had originally intended it to become a smooth scroll, but that's not really practical with this implementation and I've since come up with a better, smooth scroll. My previous post about uselessness elicited some pretty good ideas so rather than just relegating this to the trash heap... It's tile based. Each tile is half a screen in width. Look for "TileList:" this is the list of tiles to be shown. Tiles are numbered from 0 to 20 and are illustrated in the attached ScrollTiles.txt (Use a fixed font). Tiles are grouped according to where their left edge starts (low, middle, high) and where their right edge ends (low, middle, high) so that tiles can be strung together to create a smooth terrain. The scroll is inverted for the top of the screen, and a combined image is used in the center of the screen. The effect is similar to a Gradius or Salamander/Lifeforce type game. (The middle image can easily be removed, my intention was to only have it present at certain times...) There's also a little ship you can move around.. Code is uncommented but should be reasonably straightforeward and I generally use relevant variable names. It's not really optimised or tidied so there may be some extraneous code and whatnot. (The scroller does eat a pretty good chunk of RAM too) Chris...
processor 6502 include vcs.h SEG.U variables org $80 CurrentTilePosition .byte FirstTilePointer1 .word FirstTilePointer2 .word FirstTilePointer3 .word SecondTilePointer1 .word SecondTilePointer2 .word SecondTilePointer3 .word scrollposition .byte pausecounter .byte temp .byte playerY .byte Column1Line1 .byte Column1Line2 .byte Column1Line3 .byte Column1Line4 .byte Column1Line5 .byte Column1Line6 .byte Column1Line7 .byte Column1Line8 .byte Column2Line1 .byte Column2Line2 .byte Column2Line3 .byte Column2Line4 .byte Column2Line5 .byte Column2Line6 .byte Column2Line7 .byte Column2Line8 .byte Column3Line1 .byte Column3Line2 .byte Column3Line3 .byte Column3Line4 .byte Column3Line5 .byte Column3Line6 .byte Column3Line7 .byte Column3Line8 .byte Column4Line1 .byte Column4Line2 .byte Column4Line3 .byte Column4Line4 .byte Column4Line5 .byte Column4Line6 .byte Column4Line7 .byte Column4Line8 .byte Column5Line1 .byte Column5Line2 .byte Column5Line3 .byte Column5Line4 .byte Column5Line5 .byte Column5Line6 .byte Column5Line7 .byte Column5Line8 .byte Column6Line1 .byte Column6Line2 .byte Column6Line3 .byte Column6Line4 .byte Column6Line5 .byte Column6Line6 .byte Column6Line7 .byte Column6Line8 .byte SEG Bank0 org $F000 Start ; SEI ; Disable interrupts, if there are any. ; CLD ; Clear BCD math bit. LDX #$FF TXS ; Set stack to beginning. ; LDA #0 ;B1 STA 0,X ; DEX ; BNE B1 lda #0 sta CurrentTilePosition lda #130 sta playerY lda #20 sta scrollposition lda #40 sta pausecounter lda #0 sta CTRLPF STA COLUBK lda #$1c STA COLUPF ;Setup Tile Table In Ram ldx #7 nextsetuptiles: lda #0 ;Tile1C1,x sta Column1Line1,x lda #0 ;Tile1C2,x sta Column2Line1,x lda #0 ;Tile1C3,x sta Column3Line1,x lda #0 ;Tile2C1,x sta Column4Line1,x lda #0 ;Tile2C2,x sta Column5Line1,x lda #0 ;Tile2C3,x sta Column6Line1,x dex bpl nextsetuptiles DrawLogo LDX #0 LDA #2 STA VSYNC ;Begin vertical sync. STA WSYNC ; First line of VSYNC STA WSYNC ; Second line of VSYNC. LDA #41 STA TIM64T LDA #0 STA CXCLR STA WSYNC ; Third line of VSYNC. STA VSYNC ; (0) sta HMCLR LDA #$80 BIT SWCHA BEQ Right LSR BIT SWCHA BEQ Left LSR BIT SWCHA BEQ Down LSR BIT SWCHA BEQ Up jmp donemove Right: lda #128+64+32+16 sta HMBL jmp donemove Left: lda #16 sta HMBL jmp donemove Up: inc playerY jmp donemove Down: dec playerY jmp donemove donemove: dec pausecounter beq donexttile jmp noscroll donexttile: ;Scroll left one playfiel bit ldx #7 nextscroll: lda #0 sta pausecounter lda Column6Line1,x lsr sta Column6Line1,x lda Column5Line1,x rol sta Column5Line1,x lda Column4Line1,x bcc noadd1 lsr ora #128 jmp doneadd1 noadd1: lsr doneadd1: sta Column4Line1,x and #8 beq noadd4 inc pausecounter noadd4: lda pausecounter beq noadd3 lda Column3Line1,x lsr ora #128 jmp doneadd3 noadd3: lda Column3Line1,x lsr doneadd3: sta Column3Line1,x lda Column2Line1,x rol sta Column2Line1,x lda Column1Line1,x bcc noadd2 lsr ora #128 sta Column1Line1,x jmp doneadd2 noadd2: lsr sta Column1Line1,x doneadd2: dex bpl nextscroll dec scrollposition bpl notresetscrollposition lda #19 sta scrollposition inc CurrentTilePosition lda CurrentTilePosition cmp #60 bne nonexttile lda #0 sta CurrentTilePosition nonexttile: notresetscrollposition: ; ldy CurrentTilePosition ; lda TileList,y ; asl ; tay ; lda TilePointers1,y ; sta FirstTilePointer1 ; lda TilePointers1+1,y ; sta FirstTilePointer1+1 ; lda TilePointers2,y ; sta FirstTilePointer2 ; lda TilePointers2+1,y ; sta FirstTilePointer2+1 ; lda TilePointers3,y ; sta FirstTilePointer3 ; lda TilePointers3+1,y ; sta FirstTilePointer3+1 ldy CurrentTilePosition lda TileList,y asl tay lda TilePointers1,y sta SecondTilePointer1 lda TilePointers1+1,y sta SecondTilePointer1+1 lda TilePointers2,y sta SecondTilePointer2 lda TilePointers2+1,y sta SecondTilePointer2+1 lda TilePointers3,y sta SecondTilePointer3 lda TilePointers3+1,y sta SecondTilePointer3+1 ;Get bits for right edge of playfield lda scrollposition cmp #16 bmi not16to19 lda #128 sta pausecounter lda scrollposition sec sbc #16 beq notrot1 tay nextrot1: lsr pausecounter dey bne nextrot1 notrot1: ldy #7 nextbit1: lda pausecounter and (SecondTilePointer1),y beq nobit1 lda Column6Line1,y ora #128 sta Column6Line1,y nobit1: dey bpl nextbit1 jmp donenewbit not16to19: cmp #8 bmi not8to15 lda #1 sta pausecounter lda scrollposition sec sbc #8 beq notrot2 tay nextrot2: asl pausecounter dey bne nextrot2 notrot2: ldy #7 nextbit2: lda pausecounter and (SecondTilePointer2),y beq nobit2 lda Column6Line1,y ora #128 sta Column6Line1,y nobit2: dey bpl nextbit2 jmp donenewbit not8to15: lda #128 sta pausecounter lda scrollposition beq notrot3 tay nextrot3: lsr pausecounter dey bne nextrot3 notrot3: ldy #7 nextbit3: lda pausecounter and (SecondTilePointer3),y beq nobit3 lda Column6Line1,y ora #128 sta Column6Line1,y nobit3: dey bpl nextbit3 donenewbit: lda #20 sta pausecounter noscroll: lda #1+2+4+16+32 sta NUSIZ0 sta NUSIZ1 lda #$0e sta COLUP0 lda #$1c sta COLUP1 lda #0 sta ENAM0 sta ENAM1 sta GRP0 sta GRP1 sta PF0 sta PF1 sta PF2 DrawScreen LDA INTIM BNE DrawScreen ; Whew! STA WSYNC STA VBLANK ;End the VBLANK period with a zero. ; sta WSYNC ; sta WSYNC ; sta WSYNC ; sta HMCLR ; sta WSYNC ; lda #16 ; sta HMM0 ; sta HMM1 ; sta WSYNC ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; sta.w RESP0 ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; sta RESM0 ; sta RESP1 ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; sta RESM1 sta WSYNC lda #0 sta ENABL nop nop nop nop nop nop nop ; sta RESBL sta RESP0 nop nop nop nop nop nop nop nop nop nop nop nop nop nop sta.w RESP1 lda #0 sta GRP0 sta GRP1 lda #6 sta NUSIZ0 sta NUSIZ1 sta WSYNC sta HMOVE sta WSYNC sta WSYNC ldy playerY ; y = scanline jsr scroller1 jsr scroller1 jsr scroller2 jsr scroller2 jsr scroller3 jsr scroller3 jsr scroller4 jsr scroller4 jsr scroller5 jsr scroller5 jsr scroller6 jsr scroller6 jsr scroller7 jsr scroller7 jsr scroller8 jsr scroller8 sta WSYNC lda #0 sta PF0 sta PF1 sta PF2 nop nop nop nop nop nop lda BallData,y sta ENABL asl asl sta CTRLPF iny jsr biggap jsr scroller8 jsr scroller8 jsr scroller7 jsr scroller7 jsr scroller6 jsr scroller6 jsr scroller5 jsr scroller5 jsr scroller4 jsr scroller4 ; jsr scroller3 ; jsr scroller3 ; jsr scroller3 ; jsr scroller3 jsr scroller4 jsr scroller4 jsr scroller5 jsr scroller5 jsr scroller6 jsr scroller6 jsr scroller7 jsr scroller7 jsr scroller8 jsr scroller8 sta WSYNC lda #0 sta PF0 sta PF1 sta PF2 lda BallData,y sta ENABL asl asl sta CTRLPF iny jsr biggap jsr scroller8 jsr scroller8 jsr scroller7 jsr scroller7 jsr scroller6 jsr scroller6 jsr scroller5 jsr scroller5 jsr scroller4 jsr scroller4 jsr scroller3 jsr scroller3 jsr scroller2 jsr scroller2 jsr scroller1 jsr scroller1 sta WSYNC lda #0 sta PF0 sta PF1 sta PF2 sta GRP0 sta GRP1 ; ldy #50 ;nextblankline: ; sta WSYNC ; dey ; bne nextblankline STA VBLANK ; Make TIA output invisible, lda #35 sta TIM64T OverscanWait: lda INTIM bne OverscanWait JMP DrawLogo ;Continue forever. biggap: ldx #69 next3b: sta WSYNC lda BallData,y sta ENABL asl asl sta CTRLPF iny dex bne next3b rts scroller1: sta WSYNC lda Column1Line1 ;3 sta PF0 ;3 lda Column2Line1 ;3 sta PF1 ;3 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line1 ;3 sta PF2 ;3 lda Column4Line1 ;3 sta PF0 ;3 lda Column5Line1 ;3 sta PF1 ;3 lda Column6Line1 ;3 sta PF2 ;3 iny ;2 rts ;6+6 scroller2: sta WSYNC lda Column1Line2 sta PF0 lda Column2Line2 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line2 sta PF2 lda Column4Line2 sta PF0 lda Column5Line2 sta PF1 lda Column6Line2 sta PF2 iny rts scroller3: sta WSYNC lda Column1Line3 sta PF0 lda Column2Line3 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line3 sta PF2 lda Column4Line3 sta PF0 lda Column5Line3 sta PF1 lda Column6Line3 sta PF2 iny rts scroller4: sta WSYNC lda Column1Line4 sta PF0 lda Column2Line4 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line4 sta PF2 lda Column4Line4 sta PF0 lda Column5Line4 sta PF1 lda Column6Line4 sta PF2 iny rts scroller5: sta WSYNC lda Column1Line5 sta PF0 lda Column2Line5 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line5 sta PF2 lda Column4Line5 sta PF0 lda Column5Line5 sta PF1 lda Column6Line5 sta PF2 iny rts scroller6: sta WSYNC lda Column1Line6 sta PF0 lda Column2Line6 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line6 sta PF2 lda Column4Line6 sta PF0 lda Column5Line6 sta PF1 lda Column6Line6 sta PF2 iny rts scroller7: sta WSYNC lda Column1Line7 sta PF0 lda Column2Line7 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line7 sta PF2 lda Column4Line7 sta PF0 lda Column5Line7 sta PF1 lda Column6Line7 sta PF2 iny rts scroller8: sta WSYNC lda Column1Line8 sta PF0 lda Column2Line8 sta PF1 lda BallData,y ;4 sta ENABL ;3 asl ;2 asl ;2 sta CTRLPF ;3 lda Column3Line8 sta PF2 lda Column4Line8 sta PF0 lda Column5Line8 sta PF1 lda Column6Line8 sta PF2 iny rts TileList: .byte 0,1,3,9,12,18,14,2,4,10,7,5,19,16,11,13,15,6,17,8 .byte 5,20,15,0,1,2,1,2,1,2,3,10,10,10,9,10,9,10,9,13 .byte 18,19,18,19,19,18,18,15,6,15,6,15,0,4,8,4,8,1,1,1 TilePointers1: .word Tile1C1,Tile2C1,Tile3C1,Tile4C1,Tile5C1,Tile6C1,Tile7C1,Tile8C1,Tile9C1,Tile10C1,Tile11C1,Tile12C1,Tile13C1,Tile14C1,Tile15C1,Tile16C1,Tile17C1,Tile18C1,Tile19C1,Tile20C1,Tile21C1 TilePointers2: .word Tile1C2,Tile2C2,Tile3C2,Tile4C2,Tile5C2,Tile6C2,Tile7C2,Tile8C2,Tile9C2,Tile10C2,Tile11C2,Tile12C2,Tile13C2,Tile14C2,Tile15C2,Tile16C2,Tile17C2,Tile18C3,Tile19C2,Tile20C2,Tile21C2 TilePointers3: .word Tile1C3,Tile2C3,Tile3C3,Tile4C3,Tile5C3,Tile6C3,Tile7C3,Tile8C3,Tile9C3,Tile10C3,Tile11C3,Tile12C3,Tile13C3,Tile14C3,Tile15C3,Tile16C3,Tile17C3,Tile18C2,Tile19C3,Tile20C3,Tile21C3 org $FD00 BallData: .byte 2,6,10,10,14,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .byte 0,0,0,0,0 ;XX ;XXXX ;XXXX ;XXXXXXXX ; .byte 2,6,10,6,2,6,10,14,10,6,2,6,10,6,2,0,0,0,0,0,0,0,0,0 org $FE00 ;Starts at bottom: ;Ends at bottom: Tile1C1: .byte 240,0,0,0,0,0,0,0 Tile1C2: .byte 255,0,0,0,0,0,0,0 Tile1C3: .byte 255,0,0,0,0,0,0,0 Tile2C1: .byte 240,224,192,128,0,0,0,0 Tile2C2: .byte 255,255,255,255,255,127,63,31 Tile2C3: .byte 255,127,63,31,15,7,3,1 Tile3C1: .byte 240,224,192,128,0,0,0,0 Tile3C2: .byte 255,255,255,255,0,0,0,0 Tile3C3: .byte 255,127,63,31,0,0,0,0 ;Ends at middle: Tile4C1: .byte 240,224,192,128,0,0,0,0 Tile4C2: .byte 255,255,255,255,0,0,0,0 Tile4C3: .byte 255,255,255,255,0,0,0,0 Tile5C1: .byte 240,224,192,128,0,0,0,0 Tile5C2: .byte 255,255,255,255,255,127,63,31 Tile5C3: .byte 255,255,255,255,127,63,31,15 ;Ends at top: Tile6C1: .byte 240,224,192,128,0,0,0,0 Tile6C2: .byte 255,255,255,255,255,127,63,31 Tile6C3: .byte 255,255,255,255,255,255,255,255 Tile7C1: .byte 240,224,192,128,0,0,0,0 Tile7C2: .byte 255,255,255,255,3,1,0,0 Tile7C3: .byte 255,255,255,255,255,255,255,254 ;Starts at middle: ;Ends at bottom: Tile8C1: .byte 240,240,240,240,0,0,0,0 Tile8C2: .byte 255,255,255,255,0,0,0,0 Tile8C3: .byte 255,127,63,31,0,0,0,0 Tile9C1: .byte 240,240,240,240,128+64+32,128+64,128,0 Tile9C2: .byte 255,255,255,255,255,255,255,255 Tile9C3: .byte 255,127,63,31,15,7,3,1 ;Ends at middle: Tile10C1: .byte 240,240,240,240,0,0,0,0 Tile10C2: .byte 255,128+64+32,128+64,128,0,0,0,0 Tile10C3: .byte 255,254,252,248,0,0,0,0 Tile11C1: .byte 240,240,240,240,0,0,0,0 Tile11C2: .byte 255,255,255,255,127,63,31,15 Tile11C3: .byte 255,255,255,255,7,3,1,0 Tile12C1: .byte 240,240,240,240,0,0,0,0 Tile12C2: .byte 255,255,255,255,0,0,0,0 Tile12C3: .byte 255,255,255,255,0,0,0,0 ;Ends at top Tile13C1: .byte 240,240,240,240,0,0,0,0 Tile13C2: .byte 255,255,255,255,0,0,0,0 Tile13C3: .byte 255,255,255,255,128+64+32+16,128+64+32,128+64,128 Tile14C1: .byte 240,16+32+64,16+32,16,0,0,0,0 Tile14C2: .byte 255,0,0,0,0,0,0,0 Tile14C3: .byte 255,254,252,248,240,224,192,128 ;Starts at top: ;Ends at bottom: Tile15C1: .byte 240,240,240,240,240,240,240,240 Tile15C2: .byte 255,255,255,255,255,255,255,255 Tile15C3: .byte 255,127,63,31,15,7,3,1 Tile16C1: .byte 240,240,240,240,240,240,240,240 Tile16C2: .byte 255,255,255,255,252,248,240,224 Tile16C3: .byte 255,127,63,31,0,0,0,0 ;Ends at middle: Tile17C1: .byte 240,240,240,240,240,240,240,240 Tile17C2: .byte 255,255,255,255,252,248,240,224 Tile17C3: .byte 255,255,255,255,0,0,0,0 Tile18C1: .byte 240,240,240,240,240,16+32+64,16+32,16 Tile18C2: .byte 255,32+64+128,64+128,128,0,0,0,0 Tile18C3: .byte 255,254,252,248,0,0,0,0 ;Ends at top: Tile19C1: .byte 240,240,240,240,240,16+32+64,16+32,16 Tile19C2: .byte 255,32+64+128,64+128,128,0,0,0,0 Tile19C3: .byte 255,254,252,248,240,224,192,128 Tile20C1: .byte 240,240,240,240,240,240,240,240 Tile20C2: .byte 255,255,255,255,255,128+64+32,128+64,128 Tile20C3: .byte 255,255,255,255,255,254,252,248 Tile21C1: .byte 240,240,240,240,240,240,240,240 Tile21C2: .byte 255,255,255,255,255,255,255,255 Tile21C3: .byte 255,255,255,255,255,255,255,255 org $FFFC .word Start .word Start
Attachment:
SCROLL-R.BIN
Description: Binary data
| _ | ___ _ /\ __ | ___ / \ | / _/ ____ / \ / \ | / / | / / 0 1 2 | 3 4 | 5 6 | | ---------------------------------------- _ | | ___ / \ | _ _ _/\_ ____ | ___/ / \ \ | \/ | \_/ 7 8 | 9 10 11 | 12 13 | | ---------------------------------------- __ _ | _ | _ _ ____ \ \_ | \__ \ | \ / \/ \ \ | \_/ | \/ 14 15 | 16 17 | 18 19 20 | | ---------------------------------------- Pieces: Starts at bottom Ends at bottom: Tile1 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 XXXX XXXXXXXX XXXXXXXX Tile2 0000 000XXXXX X0000000 0000 00XXXXXX XX000000 0000 0XXXXXXX XXX00000 0000 XXXXXXXX XXXX0000 000X XXXXXXXX XXXXX000 00XX XXXXXXXX XXXXXX00 0XXX XXXXXXXX XXXXXXX0 XXXX XXXXXXXX XXXXXXXX Tile3 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 000X XXXXXXXX XXXXX000 00XX XXXXXXXX XXXXXX00 0XXX XXXXXXXX XXXXXXX0 XXXX XXXXXXXX XXXXXXXX Ends at middle: Tile4 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 000X XXXXXXXX XXXXXXXX 00XX XXXXXXXX XXXXXXXX 0XXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Tile5 0000 000XXXXX XXXX0000 0000 00XXXXXX XXXXX000 0000 0XXXXXXX XXXXXX00 0000 XXXXXXXX XXXXXXX0 000X XXXXXXXX XXXXXXXX 00XX XXXXXXXX XXXXXXXX 0XXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Ends at top: Tile6 0000 000XXXXX XXXXXXXX 0000 00XXXXXX XXXXXXXX 0000 0XXXXXXX XXXXXXXX 0000 XXXXXXXX XXXXXXXX 000X XXXXXXXX XXXXXXXX 00XX XXXXXXXX XXXXXXXX 0XXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Tile7 0000 00000000 0XXXXXXX 0000 00000000 XXXXXXXX 0000 0000000X XXXXXXXX 0000 000000XX XXXXXXXX 000X XXXXXXXX XXXXXXXX 00XX XXXXXXXX XXXXXXXX 0XXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Starts at middle Ends at bottom Tile8 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 XXXX XXXXXXXX XXXXX000 XXXX XXXXXXXX XXXXXX00 XXXX XXXXXXXX XXXXXXX0 XXXX XXXXXXXX XXXXXXXX Tile9 0000 XXXXXXXX X0000000 000X XXXXXXXX XX000000 00XX XXXXXXXX XXX00000 0XXX XXXXXXXX XXXX0000 XXXX XXXXXXXX XXXXX000 XXXX XXXXXXXX XXXXXX00 XXXX XXXXXXXX XXXXXXX0 XXXX XXXXXXXX XXXXXXXX Ends at middle Tile10 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 XXXX X0000000 000XXXXX XXXX XX000000 00XXXXXX XXXX XXX00000 0XXXXXXX XXXX XXXXXXXX XXXXXXXX Tile11 0000 0000XXXX 00000000 0000 000XXXXX X0000000 0000 00XXXXXX XX000000 0000 0XXXXXXX XXX00000 XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Tile12 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 0000 00000000 00000000 XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Ends at top Tile13 0000 00000000 0000000X 0000 00000000 000000XX 0000 00000000 00000XXX 0000 00000000 0000XXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Tile14 0000 00000000 0000000X 0000 00000000 000000XX 0000 00000000 00000XXX 0000 00000000 0000XXXX X000 00000000 000XXXXX XX00 00000000 00XXXXXX XXX0 00000000 0XXXXXXX XXXX XXXXXXXX XXXXXXXX Starts at top Ends at bottom Tile15 XXXX XXXXXXXX X0000000 XXXX XXXXXXXX XX000000 XXXX XXXXXXXX XXX00000 XXXX XXXXXXXX XXXX0000 XXXX XXXXXXXX XXXXX000 XXXX XXXXXXXX XXXXXX00 XXXX XXXXXXXX XXXXXXX0 XXXX XXXXXXXX XXXXXXXX Tile16 XXXX XXX00000 00000000 XXXX XXXX0000 00000000 XXXX XXXXX000 00000000 XXXX XXXXXX00 00000000 XXXX XXXXXXXX XXXXX000 XXXX XXXXXXXX XXXXXX00 XXXX XXXXXXXX XXXXXXX0 XXXX XXXXXXXX XXXXXXXX Ends at middle Tile17 XXXX XXX00000 00000000 XXXX XXXX0000 00000000 XXXX XXXXX000 00000000 XXXX XXXXXX00 00000000 XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Tile18 X000 00000000 00000000 XX00 00000000 00000000 XXX0 00000000 00000000 XXXX 00000000 00000000 XXXX X0000000 000XXXXX XXXX XX000000 00XXXXXX XXXX XXX00000 0XXXXXXX XXXX XXXXXXXX XXXXXXXX Ends at top Tile19 X000 00000000 0000000X XX00 00000000 000000XX XXX0 00000000 00000XXX XXXX 00000000 0000XXXX XXXX X0000000 000XXXXX XXXX XX000000 00XXXXXX XXXX XXX00000 0XXXXXXX XXXX XXXXXXXX XXXXXXXX Tile20 XXXX X0000000 000XXXXX XXXX XX000000 00XXXXXX XXXX XXX00000 0XXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX Tile21 XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX XXXX XXXXXXXX XXXXXXXX
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [stella] Any ideas on the no fl, Christopher Tumber | Thread | [stella] New jumptable implementati, R Mundschau |
[stella] Alternate 8K Banswitching , Christopher Tumber | Date | Re: [stella] Space Instigators - Pu, Fabrizio Zavagli |
Month |