+batari Posted October 31, 2015 Share Posted October 31, 2015 Yeah, its the former; the ROM is completely ignored. I'm not against throwing in some passive bytes into future releases to satisfy the heuristics. I'm not aware of any. I don't think the XBoard sold in large quantities, so using it would have severely limited a homebrew's potential audience. However once XM comes out I expect to see at least some XM-only homebrews that use the extra ram. In case you haven't seen it, here's the the XBoard access info. Hmm... Well, what do you do to detect the presence of HSC? And do you know if the other games detect it the same way? It may be possible to detect the detection 1 Link to comment Share on other sites More sharing options...
+swlovinist Posted October 31, 2015 Share Posted October 31, 2015 I just want to say thank you batari for making this product. I am having a blast with my cart and already have a 7800 night planned with friends to play some great games. This cart also will be assisting a release of a future homebrew as well . 1 Link to comment Share on other sites More sharing options...
RevEng Posted October 31, 2015 Share Posted October 31, 2015 The HSC has a formatted has a 5-byte signature at $1002. 7800basic just checks the first 2 bytes of the signature value. I'm not sure if Bob does the same, or looks for some bytes in the ROM. In my case, since I didn't build in a format routine, I didn't want the games to use an unformatted card. Link to comment Share on other sites More sharing options...
atarian63 Posted October 31, 2015 Share Posted October 31, 2015 Do you have a Commando? How is the Pokey/TIA balance? My Ballblazer sounds pretty loud despite not using TIA, so I don't imagine the Pokey will be too weak like with the other 3rd party mods. If someone with a Best modded 7800 could test, I would appreciate. I assume there's a resistor voltage divider somewhere in the mod circuit, unless all the output pins are shorted together to let the chips fight for dominance, which would likely sound like shit and put unneeded stress on the vintage chips. Each audio source gets a resistor to connect it to the input on board. Assuming the input impedance on the amp circuit is higher than the resistor values, not necessarily a given, the proportion of signal level from the output will be reflected in the values of the resistances. Increasing the value of a resistor will soften the channel it's connected to and brighten the others proportionally. Not all chips output the same voltage levels so the chosen values of the resistors need to reflect this. For instance if the TIA had peak-to-peak of 5V and the Pokey had a peak-to-peak of 2V, then you might get balanced sound by connecting a 2.2k to the Pokey and a 5.6k to the TIA. This is just an example. I don't know what the true values of the components are. If the amp has low input impedance, then lower resistances will be needed or the console audio output will be too faint. Likewise connecting raw chip input or too low value may very well overdrive the circuit and sound horrible. NES used 10k and 22k resistors to mix the pulse and noise channels of the NES CPU. Again, the sound mixer on the TIA and in cart audio may be completely different so that range of values may not be suitable. It is likely the creators of the 3rd party AV mods did not reference internal Atari docs when hacking the 7800, and may have tuned the circuits by ear without access to a cart that generated both Pokey and TIA audio. If Ballblazer played sound, then the mod was working... I will check it may be on my cuttle cart, if not never could figure out how to add files etc. Link to comment Share on other sites More sharing options...
Trebor Posted October 31, 2015 Share Posted October 31, 2015 Not sure if it may help, but here are the X-Board description details: ; X-Board Description ; The X-board (iet7830) is an internal expansion board for the ATARI 7800 which ; gives the system 128 Kbyte of SRAM and one POKEY chip. ; ; The expansion SRAM is located from $4000 up to $7fff and is divided into 8 banks ; of 16Kbyte each. The SRAM is by default disabled when the system starts up and ; has to be enabled by the application. This is so that existing games and software ; will function properly. To enable the SRAM write a "1" to Bit 3 of the XCTRL ; register. ; ; 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 MEMTESTCOUNT = 10 ; Number of iterations when testing the XBoard Memory XMEMORYSTART = $4000 ; This is where the memory of the XBoard starts ;************************************************************************ ;* ;* Function: SetXCtrl ;* ;* Description: This function sets the XCTRL register to the value in ;* acc and updates the shadow ;* ;************************************************************************ SetXCtrl: sta XCTRL sta XCTRL_SHDW rts ;************************************************************************ ;* ;* Here's the code for checking and enabling the XBoard SRAM ;* ;* This test fills the entire 16K memory bank with a known pattern ;* and then compares it with the same pattern. If any byte is unequal ;* the memory test aborts and reports no memory. ;* ;* For this test to be effective the length of the test pattern must ;* not be equal to a power of 2 base. So it has been chosen to just ;* repeat all strings used into memory. ;* ;************************************************************************ ; First we load the memory with a known test string...... lda #XENABLEMEM jsr SetXCtrl ; Enable XBOARD SRAM and set to bank zero lda #<XMEMORYSTART sta MemTest lda #>XMEMORYSTART sta MemTest+1 ; Loads the memory address lda #MEMTESTCOUNT ; Number of iterations to test in memory (<256) sta Iterate ldy #0 XCheck0: ldx #<MEMTESTLEN ; Load memory test string length (<256) XCheck1: lda Text1,X sta (MemTest),Y ; Store test character inc MemTest bne XCheck15 inc MemTest + 1 ; Increment the XBoard memory pointer XCheck15: lda MemTest ; Check low target adress for zero bne XCheck2 ; Skip if not zero lda MemTest + 1 ; Check high target address cmp #$80 ; If it's hex 80 we have a wrap = done bne XCheck2 ; Loop again if not zero jmp XCheck25 ; Break out of this loop XCheck2: dex bne XCheck1 ; Store the entire test data set beq XCheck0 ; Reload test string counter ; Second phase of the memory test ; Now we compare the stored data in memory with the reference content.... XCheck25: lda #<XMEMORYSTART sta MemTest lda #>XMEMORYSTART sta MemTest+1 ; Loads the memory address lda #MEMTESTCOUNT ; Number of iterations to test in memory (<256) sta Iterate ldy #0 XCheck3: ldx #<MEMTESTLEN ; Load memory test string length (<256) XCheck4: lda Text1,X ; Load the known data to compare memory contents with cmp (MemTest),Y ; And do the comparison. bne XCheck6 ; Skip further checking if not equal, ie. memory error XCheck7: inc MemTest ; ... otherwise continue to compare. bne XCheck5 inc MemTest + 1 ; Increment the XBoard memory pointer XCheck5: lda MemTest ; Check low target adress for zero bne XCheck55 ; Skip if not zero lda MemTest + 1 ; Check high target address cmp #$80 ; If it's hex 80 we have a wrap = done bne XCheck55 ; Loop again if not zero jmp TA1 ; Break out of this loop XCheck55: dex bne XCheck4 ; Store the entire test data set beq XCheck3 ; And reload the test length counter TA1: jsr XMemOK ; Go show memory indicator Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 1, 2015 Share Posted November 1, 2015 I just finally had a minute to plug this in, what is supposed to happen, when there is no SD cart in the cart? Link to comment Share on other sites More sharing options...
+batari Posted November 1, 2015 Share Posted November 1, 2015 I just finally had a minute to plug this in, what is supposed to happen, when there is no SD cart in the cart? You should get a warning message saying "SD card initialization error" and some other text suggesting possible remedies. Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 1, 2015 Share Posted November 1, 2015 Hmm, I got a black screen. I don't really have time to make a SD cart right now. Thanks. Link to comment Share on other sites More sharing options...
toiletunes Posted November 1, 2015 Share Posted November 1, 2015 (edited) Awesome, I am just loving this Concerto even as is. Any firmware improvements are just icing on the cake. Couple of Q's, Batari- 1) will you send a label or label file to those of us with a PRGE pre-release cart? 2) sorry in advance for this question as it may seem a little green: what can the XM do that the concerto cart cannot? 3) are you able to get any .a78 of Double Dragon to work on the current firmware version? XM has extra ram (concerto might also have this), Yamaha sound chip, built in Pokey, built in HSC functionality and a port for the XE keyboard. Concerto has the potential for HSC capabilities, a slot for pokey, and a SD slot to load games. Did I miss anything? Edited November 1, 2015 by toiletunes Link to comment Share on other sites More sharing options...
shadow460 Posted November 1, 2015 Share Posted November 1, 2015 (edited) Cool! I saw a post on Facebook about this. I'm not much into multicarts but this will be a VERY useful item. Sign me up for the general release. Edited November 1, 2015 by shadow460 Link to comment Share on other sites More sharing options...
+batari Posted November 1, 2015 Share Posted November 1, 2015 Hmm, I got a black screen. I don't really have time to make a SD cart right now. Thanks. You don't get the Atari logo at boot? Link to comment Share on other sites More sharing options...
Andromeda Stardust Posted November 1, 2015 Share Posted November 1, 2015 Hmm, I got a black screen. I don't really have time to make a SD cart right now. Thanks. You don't get the Atari logo at boot? Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 1, 2015 Share Posted November 1, 2015 You don't get the Atari logo at boot? Nope, black. I'll try to pop the PCB out later and try again. Link to comment Share on other sites More sharing options...
+batari Posted November 1, 2015 Share Posted November 1, 2015 I think the pin numbers I used on the card edge may be different than convention. I think most schematics list pin 23-24 for VCC and GND, while on Concerto, it's 11-12. If you bought a bare board and are going from pin numbers alone, the board could be in backward. The POKEY should face toward the back of the console when inserted. Just a guess. Link to comment Share on other sites More sharing options...
+DrVenkman Posted November 1, 2015 Share Posted November 1, 2015 Do you think we can get a Moderator to create and pin a "Concerto Status and Updates" thread here to collect all the latest info in one single thread instead of being scattered across several threads in several sections of the forums? 3 Link to comment Share on other sites More sharing options...
Albert Posted November 1, 2015 Share Posted November 1, 2015 Do you think we can get a Moderator to create and pin a "Concerto Status and Updates" thread here to collect all the latest info in one single thread instead of being scattered across several threads in several sections of the forums? Depends when I get my Concerto cart. ..Al 7 Link to comment Share on other sites More sharing options...
Albert Posted November 1, 2015 Share Posted November 1, 2015 More seriously, probably deserves a sub-forum like the Harmony Cart has. ..Al 7 Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 3, 2015 Share Posted November 3, 2015 I think the pin numbers I used on the card edge may be different than convention. I think most schematics list pin 23-24 for VCC and GND, while on Concerto, it's 11-12. If you bought a bare board and are going from pin numbers alone, the board could be in backward. The POKEY should face toward the back of the console when inserted. Just a guess. No, it is in a shell, with cutouts. I just popped it out of the shell and it doesn't work at all, even with a SD cart in it. Link to comment Share on other sites More sharing options...
+batari Posted November 3, 2015 Share Posted November 3, 2015 No, it is in a shell, with cutouts. I just popped it out of the shell and it doesn't work at all, even with a SD cart in it. PM me your address so I can send a replacement, and I'll send mine so you can mail the old board back and I can figure out the issue. Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 3, 2015 Share Posted November 3, 2015 PM me your address so I can send a replacement, and I'll send mine so you can mail the old board back and I can figure out the issue. Gonna inspect the board with my stereo microscope, tomorrow, and see if it isn't something simple first, like a bridged pin, due to heat or something. When it arrived, it was over 90 degrees here, not enough to melt solder, but enough to drop a solder drip from the PCB and lodge it somewhere. And yeah, no worries about it. Not like I actually need it, my MCP cart does well enough for the crap I dabble in. Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 5, 2015 Share Posted November 5, 2015 PM me your address so I can send a replacement, and I'll send mine so you can mail the old board back and I can figure out the issue. Done, I could not see anything horrible under the microscope. Thanks. Link to comment Share on other sites More sharing options...
TheRedEye Posted November 5, 2015 Share Posted November 5, 2015 Possibly dumb question: does Concerto detect a 2600 console and launch in a 2600-only mode? Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 5, 2015 Share Posted November 5, 2015 Possibly dumb question: does Concerto detect a 2600 console and launch in a 2600-only mode? You can not insert it into a 2600, it is a 7800 PCB. Or did I misunderstand the question? Link to comment Share on other sites More sharing options...
Andromeda Stardust Posted November 5, 2015 Share Posted November 5, 2015 Possibly dumb question: does Concerto detect a 2600 console and launch in a 2600-only mode? No. You can not insert it into a 2600, it is a 7800 PCB. Or did I misunderstand the question? What he said. 7800 PCBs have 8 additional pins in the form of two fingers to either side of the 24-pin connector. These PCBs would be physically impossible to insert into a 2600, and even if they were, the boot-loader would likely not be compatible. Link to comment Share on other sites More sharing options...
+DrVenkman Posted November 5, 2015 Share Posted November 5, 2015 Here's a functionality-type question: when playing 2600 ROMs, can the Concerto handle SARA and DPC/DPC+ games? I would be sad if it couldn't play Millipede, Pitfall II or Space Rocks, for example. Sent from my iPhone using Tapatalk Link to comment Share on other sites More sharing options...
Recommended Posts