SainT Posted September 10, 2017 Author Share Posted September 10, 2017 Not an emulator as such... as CJ has said before, there's a lot of work goes into making ST stuff work on the Jag. Although there's no reason not to get EmuTOS running... 2 Quote Link to comment Share on other sites More sharing options...
SainT Posted September 10, 2017 Author Share Posted September 10, 2017 Nice features Don't think I'd use them though, as then they wouldn't work without the flash cart. Surely everyone will have one, though? Lol. Though getting YM sound support in for the JagSD should be pretty simple. I've not tried (yet), but I cant imagine there are many places to patch in a standard ST music driver for the $ffff88xx writes. And it will literally be swapping this for a write in the ASIC address space and a straight move two words from the ASIC to the DSP audio out at whatever frequency you like. 1 Quote Link to comment Share on other sites More sharing options...
+Stephen Posted September 11, 2017 Share Posted September 11, 2017 Surely everyone will have one, though? Lol. Though getting YM sound support in for the JagSD should be pretty simple. I've not tried (yet), but I cant imagine there are many places to patch in a standard ST music driver for the $ffff88xx writes. And it will literally be swapping this for a write in the ASIC address space and a straight move two words from the ASIC to the DSP audio out at whatever frequency you like. Just let it get music into the VLM and I'll be a happy camper. 2 Quote Link to comment Share on other sites More sharing options...
leech Posted September 11, 2017 Share Posted September 11, 2017 Just let it get music into the VLM and I'll be a happy camper. I can dream of a DLNA player that uses a SDcard with Wifi to read off a Plex server, right? (sorry for the off-topic) I wish Polybius had a hidden VLM mode... 1 Quote Link to comment Share on other sites More sharing options...
Karyyk Posted September 12, 2017 Share Posted September 12, 2017 Maybe Tempest 4000 will (it would be a fitting addition). 1 Quote Link to comment Share on other sites More sharing options...
SainT Posted September 12, 2017 Author Share Posted September 12, 2017 (edited) Finally! After lots of pain getting the memory controller working properly in the case where the chip select and output / write enables were not strobed in-between accesses (just the address changes), I've got a bloody game running! I can't explain how gratifying it is to see the bugger working as the last couple of days have been rather painful -- all the time feeling so close yet so far. I was wondering if it was even possible with my multiplexed bus approach, as during a read you need to leave the bus ouputting valid data until its latched on the console and hence you cant check the address for change. Thankfully there are a couple of cycles in-between reads where I can switch and check the address. It's very tight, but it's all synced perfectly to the Jag's 26mhz main bus through the CPU clock output on the cart (13mhz), then through a PLL to up it to 26Mhz. I've not tried other cycle access timings yet (it's on the default of 10), but as all commercial releases are at 10 cycles, it wont be an issue if they don't work. The game itself is read from the memory card on the cart. I've got some very unoptimised and crude code for transferring the data from the memory card into a buffer on the microcontroller, then to a register on the cart which can be read over SPI from the Jaguar. Even with this shit setup its reading the 2mb game in about 14 seconds. And this is doing things like checking the transfer is finished after EVERY byte. So there's massive improvements to be had here, although I'm still limited to about 12mbit due to limitations of the microcontroller. After a couple of days of working completely non-stop, I can take a break now!! I'll post up a video tomorrow. Edited October 25, 2019 by SainT 27 Quote Link to comment Share on other sites More sharing options...
+Stephen Posted September 13, 2017 Share Posted September 13, 2017 Excellent progress! Looking forward to the video and obviously the final product. Quote Link to comment Share on other sites More sharing options...
Higgy Posted September 13, 2017 Share Posted September 13, 2017 I don't understand the techincal side very well, but well done. You must be v.pleased. 14secs is pretty good as a first stab. I guess that is the time to swap between carts/images. If you don't change the cart/image but power cycle the Jag, loading is instant? Can't wait to see the video. Quote Link to comment Share on other sites More sharing options...
SainT Posted September 13, 2017 Author Share Posted September 13, 2017 I don't understand the techincal side very well, but well done. You must be v.pleased. 14secs is pretty good as a first stab. I guess that is the time to swap between carts/images. If you don't change the cart/image but power cycle the Jag, loading is instant? Can't wait to see the video. No, you have to load a cart in each time you boot. The ROM emulation is via SDRAM (the same sort of stuff you have in your PC), so it's not persistent at all between power cycles. Its not even persistent if you don't constantly refresh it during use! Load time though, when optimised at a hardware and software level, should only be a few seconds. At the moment the code is shockingly crap, I'm surprised its as quick as it is! 2 Quote Link to comment Share on other sites More sharing options...
SainT Posted September 13, 2017 Author Share Posted September 13, 2017 Here it is in action -- 35 Quote Link to comment Share on other sites More sharing options...
nysavant Posted September 13, 2017 Share Posted September 13, 2017 Thanks for the video update, looking great Bought a Jaguar specifically when I heard about you working on this project, can't wait! 5 Quote Link to comment Share on other sites More sharing options...
RodLightning Posted September 13, 2017 Share Posted September 13, 2017 Best news for Jag owners in a long while, especially for those who just want to play games that are insanely expensive or unavailable. Thanks for your considerable efforts! Looking forward to the finished product! 5 Quote Link to comment Share on other sites More sharing options...
Clint Thompson Posted September 13, 2017 Share Posted September 13, 2017 (edited) You deserve the maddest respect for your efforts, kind sir! 1UP! Edited September 13, 2017 by Clint Thompson 3 Quote Link to comment Share on other sites More sharing options...
waiwainl Posted September 13, 2017 Share Posted September 13, 2017 A-M-A-Z-I-N-G SainT! 1 Quote Link to comment Share on other sites More sharing options...
blipsqueak Posted September 13, 2017 Share Posted September 13, 2017 Awesome work, SainT! 1 Quote Link to comment Share on other sites More sharing options...
JagChris Posted September 13, 2017 Share Posted September 13, 2017 Nice features Don't think I'd use them though, as then they wouldn't work without the flash cart. Maybe though we'd finally get to play the Star Raiders GB was tinkering with. http://atariage.com/forums/topic/204150-star-raiders/page-1 Quote Link to comment Share on other sites More sharing options...
SainT Posted September 13, 2017 Author Share Posted September 13, 2017 There's a fair bit of flexibility in there to add additional support for emulators / ports etc... if people wanted to go that route. Additional sound chips or data conversion are a damn site easier to do in hardware. The CPLD on the cart is currently only about 36% full, and that's the smallest chip with the functionality I need, so I may as well add some additional features in there. As there are a lot of open source cores for sound etc, it requires very little effort to add them in. 7 Quote Link to comment Share on other sites More sharing options...
productof76 Posted September 14, 2017 Share Posted September 14, 2017 That' a great piece of work, truly amazing. I can't wait to get one. :-) I've got one question and maybe I've overread it but will it have a reset-button to get back to the main menu on the SD? Or, even better, the possibility to have an in-game reset by using the Jag Contoller? 1 Quote Link to comment Share on other sites More sharing options...
SainT Posted September 14, 2017 Author Share Posted September 14, 2017 That' a great piece of work, truly amazing. I can't wait to get one. :-) I've got one question and maybe I've overread it but will it have a reset-button to get back to the main menu on the SD? Or, even better, the possibility to have an in-game reset by using the Jag Contoller? That's something I've not talked about -- I could have a reset button on the cart, although that doesn't help much as you could just power on and off if you have to be able to reach the console. However, resetting from the controller, which actually is useful, looks like its possible. The controllers are on the external side of the bus, which is connected to the cartridge at all times, so I can actually detect when the Jaguar is reading or writing to the controller port and actually intercept this. So I should be able to detect a keypress combination and reset the console. There's potentially the possibility of some kind of cheat type menu as well, but only if you modify the Jaguar and install a cable which runs out to the cartridge. This is actually the developer connector on the Jaguar PCB and allows for non-maskable interrupts such that any program can be broken into. 5 Quote Link to comment Share on other sites More sharing options...
productof76 Posted September 14, 2017 Share Posted September 14, 2017 So I should be able to detect a keypress combination and reset the console. yessss... please, please, PLEASE... do it ? 1 Quote Link to comment Share on other sites More sharing options...
+CyranoJ Posted September 14, 2017 Share Posted September 14, 2017 So I should be able to detect a keypress combination and reset the console. B 3 Quote Link to comment Share on other sites More sharing options...
leech Posted September 14, 2017 Share Posted September 14, 2017 Doesn't the Jag already have the reset function from the controller? Seemed to me it was a hard wired thing and worked in every game, though I also recall a game or two that seemed to only go back to the game's menu rather than doing a full reset of the Jag. Am I wrong about that? Quote Link to comment Share on other sites More sharing options...
SainT Posted September 14, 2017 Author Share Posted September 14, 2017 (edited) On 9/14/2017 at 12:25 PM, leech said: Doesn't the Jag already have the reset function from the controller? Seemed to me it was a hard wired thing and worked in every game, though I also recall a game or two that seemed to only go back to the game's menu rather than doing a full reset of the Jag. Am I wrong about that? You're thinking of *#, this just takes you back to the title screen / main menu. Not a full reset, and wouldn't take you to the game menu. Edited October 25, 2019 by SainT 3 Quote Link to comment Share on other sites More sharing options...
Shamus Posted September 14, 2017 Share Posted September 14, 2017 * + # is definitely not hardwired in, you have to write the code to make it do anything. 3 Quote Link to comment Share on other sites More sharing options...
leech Posted September 14, 2017 Share Posted September 14, 2017 Ah, thanks for that. I kind of thought so, because I could have sworn there were some of the earlier games (like Cybermorph?) that when you pressed those buttons, it'd do the full Atari Jaguar Textured Cube animation (full reset?) Always liked that feature on the controller. These days you have weird control schemes like the PS4, where if you want to reset it you have to hit the PS button and go into Power and... now that I think about it you have to power it off, I don't think it actually resets anything... ha! Anyhow it's one of the cool things Atari thought of. I know that list is small, especially for the Jag. 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.