PacMan Posted October 15, 2006 Share Posted October 15, 2006 (edited) Ken, I'm guessing that it is not your code that is messing things up since both versions works here without hitches. I will be taking Schmutzies XBoard back to see if it faulty. Allan: I checked my NTSC board and C10 is one of the yellow capacitors ritgh behind the channel selector switch at the rear end of the board. The second one from the cart connector. You should connect the wire from the XBoard to the terminal on the capacitor closest to the connector. /P Edited October 15, 2006 by PacMan Quote Link to comment Share on other sites More sharing options...
kenfused Posted October 15, 2006 Share Posted October 15, 2006 Ken, I'm guessing that it is not your code that is messing things up since both versions works here without hitches. I will be taking Schmutzies XBoard back to see if it faulty. Allan: I checked my NTSC board and C10 is one of the yellow capacitors ritgh behind the channel selector switch at the rear end of the board. The second one from the cart connector. You should connect the wire from the XBoard to the terminal on the capacitor closest to the connector. /P It might be worthwhile to eventually create some kind of test program that would test the XBoard's RAM and Pokey. Here is the pokey detect code. Note that also a 16 is stored in XCTRL earlier at startup, and pokey is zeroed outt too. ;XBOARD equates XCTRL = $470 XPOKEY1 = $450 XPOKEY2 = $460 XRAM = $4000 ;POKEY CART equates PPOKEY1 = $4000 XPOT0 = XPOKEY1 + 0 XPOT1 = XPOKEY1 + 1 XPOT2 = XPOKEY1 + 2 XPOT3 = XPOKEY1 + 3 XAUDF1 = XPOKEY1 + 0 XAUDF2 = XPOKEY1 + 2 XAUDF3 = XPOKEY1 + 4 XAUDF4 = XPOKEY1 + 6 XAUDC1 = XPOKEY1 + 1 XAUDC2 = XPOKEY1 + 3 XAUDC3 = XPOKEY1 + 5 XAUDC4 = XPOKEY1 + 7 XAUDCTL = XPOKEY1 + 8 XSTIMER = XPOKEY1 + 9 XKBCODE = XPOKEY1 + 9 XRANDOM = XPOKEY1 + $A XSKREST = XPOKEY1 + $A XSKCTL = XPOKEY1 + $F XSKSTAT = XPOKEY1 + $F XPOTGO = XPOKEY1 + $B PPOT0 = PPOKEY1 + 0 PPOT1 = PPOKEY1 + 1 PPOT2 = PPOKEY1 + 2 PPOT3 = PPOKEY1 + 3 PAUDF1 = PPOKEY1 + 0 PAUDF2 = PPOKEY1 + 2 PAUDF3 = PPOKEY1 + 4 PAUDF4 = PPOKEY1 + 6 PAUDC1 = PPOKEY1 + 1 PAUDC2 = PPOKEY1 + 3 PAUDC3 = PPOKEY1 + 5 PAUDC4 = PPOKEY1 + 7 PAUDCTL = PPOKEY1 + 8 PSTIMER = PPOKEY1 + 9 PKBCODE = PPOKEY1 + 9 PRANDOM = PPOKEY1 + $A PSKREST = PPOKEY1 + $A PSKCTL = PPOKEY1 + $F PSKSTAT = PPOKEY1 + $F PPOTGO = PPOKEY1 + $B ;first check for POKEY CART pokey checkP: lda #2 sta PSKCTL lda PRANDOM sta ztmp1 ldx #0 @lpdp: lda PRANDOM cmp ztmp1 bne @pokey inx bne @lpdp beq @notpokey @pokey: lda #0 sta PSKCTL nop nop nop lda PRANDOM sta ztmp1 ldx #0 @lpdp2: lda PRANDOM cmp ztmp1 bne @notpokey inx bne @lpdp2 @ispok: lda #1 sta pokeyFlag lda #3 sta PSKCTL rts @notpokey: ;now check XCARD POKEY ldx #16; enable XBOARD Pokey stx XCTRL checkX: lda #2 sta XSKCTL lda XRANDOM sta ztmp1 ldx #0 stx XAUDCTL @lpdp: lda XRANDOM cmp ztmp1 bne @pokey inx bne @lpdp beq @notpokey @pokey: lda #0 sta XSKCTL nop nop nop lda XRANDOM sta ztmp1 ldx #0 @lpdp2: lda XRANDOM cmp ztmp1 bne @notpokey inx bne @lpdp2 @ispok: ldx #2 stx pokeyFlag inx stx XSKCTL @notpokey: rts Quote Link to comment Share on other sites More sharing options...
PacMan Posted October 15, 2006 Share Posted October 15, 2006 I am using a somewhat similar technique (listed below). I have also started to work on some RAM test functions which I have included as an attachment. These are not completely done yet but the data bits check and address bit check routines work. The last section is an embryo for the data integrity test. Feel free to offer comment and suggestions on how to improve the functions. /P Memtest.zip ; The POKEY is located in the high section of the available memory area at $0400 ; of the 7800. It is selected from $0460 - $046f when Bit 4 of the XCTRL register ; is set to "1" if Bit 4 = "0" the POKEY is disabled. ; XCTRL = $0470 ; Note Write only ; Bit 4 = Enable POKEY chip ; Bit 3 = Enable Banked 128Kbyte SRAM ; Bit 2 = Bit 2 of SRAM bank select ; Bit 1 = Bit 1 of SRAM bank select ; Bit 0 = Bit 0 of SRAM bank select ; ; Bit patterns for enabling/disabling XBoard features. XENABLEMEM = %00001000 XENABLEPOKEY = %00010000 XPOKEYBASE1 = $0450 XPOKEYBASE2 = $0460 . . . lda #XENABLEPOKEY ; Enable the pokey ora XCTRL_SHDW ; inclusive jsr SetXCtrl ; Set the values lda #$00 tax ST2: sta XPOKEYBASE1,X ; Clear Pokey1 sta XPOKEYBASE2,X ; Clear Pokey2 inx cpx #$10 bne ST2 lda #3 sta SKCTL + XPOKEYBASE1 ldx #128 ldy #0 XCheck8: lda RANDOM + XPOKEYBASE1 nop nop cmp RANDOM + XPOKEYBASE1 beq XCheck11 iny ; Count differences XCheck11: dex ; Dec loop counter bne XCheck8 ; Loop again cpy #16 ; No less than 16 hits bcc XCheck9 ; Jump if less than 16 hits ; XBoard Pokey is available do something special with it;-) XCheck9: ; XBoard Pokey not available :-( Quote Link to comment Share on other sites More sharing options...
kenfused Posted October 16, 2006 Share Posted October 16, 2006 I am using a somewhat similar technique (listed below). I have also started to work on some RAM test functions which I have included as an attachment. These are not completely done yet but the data bits check and address bit check routines work. The last section is an embryo for the data integrity test. Feel free to offer comment and suggestions on how to improve the functions. pokey looks similiar to the first part I do. I essentially loop through the random number generator 256 times and look for any difference, then turn off the random number generator and loop 256 times making sure they are the same. Quote Link to comment Share on other sites More sharing options...
+Allan Posted October 16, 2006 Share Posted October 16, 2006 Ken, I'm guessing that it is not your code that is messing things up since both versions works here without hitches. I will be taking Schmutzies XBoard back to see if it faulty. Allan: I checked my NTSC board and C10 is one of the yellow capacitors ritgh behind the channel selector switch at the rear end of the board. The second one from the cart connector. You should connect the wire from the XBoard to the terminal on the capacitor closest to the connector. /P Thanks /P, I hope to finish it some time this week. Allan Quote Link to comment Share on other sites More sharing options...
+Allan Posted November 25, 2006 Share Posted November 25, 2006 I am using a somewhat similar technique (listed below). I have also started to work on some RAM test functions which I have included as an attachment. These are not completely done yet but the data bits check and address bit check routines work. The last section is an embryo for the data integrity test. Feel free to offer comment and suggestions on how to improve the functions. /P Memtest.zip ; The POKEY is located in the high section of the available memory area at $0400 ; of the 7800. It is selected from $0460 - $046f when Bit 4 of the XCTRL register ; is set to "1" if Bit 4 = "0" the POKEY is disabled. ; XCTRL = $0470 ; Note Write only ; Bit 4 = Enable POKEY chip ; Bit 3 = Enable Banked 128Kbyte SRAM ; Bit 2 = Bit 2 of SRAM bank select ; Bit 1 = Bit 1 of SRAM bank select ; Bit 0 = Bit 0 of SRAM bank select ; ; Bit patterns for enabling/disabling XBoard features. XENABLEMEM = %00001000 XENABLEPOKEY = %00010000 XPOKEYBASE1 = $0450 XPOKEYBASE2 = $0460 . . . lda #XENABLEPOKEY ; Enable the pokey ora XCTRL_SHDW ; inclusive jsr SetXCtrl ; Set the values lda #$00 tax ST2: sta XPOKEYBASE1,X ; Clear Pokey1 sta XPOKEYBASE2,X ; Clear Pokey2 inx cpx #$10 bne ST2 lda #3 sta SKCTL + XPOKEYBASE1 ldx #128 ldy #0 XCheck8: lda RANDOM + XPOKEYBASE1 nop nop cmp RANDOM + XPOKEYBASE1 beq XCheck11 iny ; Count differences XCheck11: dex ; Dec loop counter bne XCheck8 ; Loop again cpy #16 ; No less than 16 hits bcc XCheck9 ; Jump if less than 16 hits ; XBoard Pokey is available do something special with it;-) XCheck9: ; XBoard Pokey not available :-( I finally got my Xboard completly installed in my 7800. I'm having trouble compiling PacMan's test program. I'm getting a bunch of messages saying 'Unknown Mnemonic 'sta'' with every line having a different opcode in it. I just tried compiling a couple of other programs with no problem so I'm guessing it's the program and not me. Any suggestions? Allan Quote Link to comment Share on other sites More sharing options...
+Allan Posted November 25, 2006 Share Posted November 25, 2006 I've been messing around with my xboard 7800 tonight without much success. I tried running the various Beefdrops since some of them are suppose to have xboard support. I tried the two Pokey-supported demos and I don't hear the music, just the sounds. I tried the official final cart and it does the same thing even with the other Pokey in the cart. I wonder if I have it soldered right. I'll try looking at it tommorrow. Allan Quote Link to comment Share on other sites More sharing options...
PacMan Posted November 27, 2006 Share Posted November 27, 2006 Allan, Do you have the possibility to program an EPROM ? In that case I can send you a test BIOS that will test the XBoard and report back what it finds. If you don't have this possibility I can send you a preprogramed EPROM instead. /P Quote Link to comment Share on other sites More sharing options...
+Allan Posted November 28, 2006 Share Posted November 28, 2006 Allan, Do you have the possibility to program an EPROM ? In that case I can send you a test BIOS that will test the XBoard and report back what it finds. If you don't have this possibility I can send you a preprogramed EPROM instead. /P My eprom burner died on me. If you could send me a preprogrammed eprom that would be great. PM sent Allan 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.