Jump to content


+AtariAge Subscriber
  • Content Count

  • Joined

  • Last visited

  • Days Won


Xuel last won the day on May 7 2018

Xuel had the most liked content!

Community Reputation

854 Excellent

About Xuel

  • Rank

Profile Information

  • Gender
  • Location

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. For #2, there is the ".batch" command. Is that sufficient? Altirra> .help .batch .batch Run debugger batch script Runs the contents of a text file as a series of debugger commands. .batch <filename>
  2. Another trampoline option is to push the target address minus one on the stack and then RTS. Upside is it only takes stack RAM. Can also be smaller code-wise. Downside is that your function pointers all need to be one less then the target address since RTS sets PC to the address on the stack, then adds one. Also a little slower. See also: https://wiki.nesdev.com/w/index.php/RTS_Trick
  3. Good question. My main purpose of this thread was to provide a central place for people to congregate to do the conversions but the obvious next step would be to request their addition to the ASMADB. The ASMA has instructions for sending in new contributions: http://asma.scene.pl/ASMA/browser/trunk/asma/Docs/Contribute.txt I believe the email address to send them to is [email protected] I just noticed that I'm listed as a contributor in the ASMA: http://asma.scene.pl/ASMA/browser/trunk/asma/Docs/Asma.txt I don't remember explicitly doing this but maybe someone uploaded one of my conversions at one point. Cool. In any case, you might be better positioned to submit your own tunes since you know all of the relevant meta information. If you need help converting them to SAP, feel free to send them to me. PM is fine.
  4. I wrote a small program, cmcdecode.pl, to search for CMC tunes in a memory dump and then write them out to separate files. There are seven tunes which are in memory during game play in Jurassic Park II. I've also included cmcdecode.pl: jp2-cmc.zip If you want to try cmcdecode, just load up a program in Altirra which is playing a CMC tune, drop into the debugger and type ".writemem dump.mem 0 L10000". Then run the script as: cmcdecode.pl dump.mem -out jp2 It will print something like this if it finds the CMC tunes: INFO: Writing jp231A0.cmc INFO: Writing jp23944.cmc INFO: Writing jp24C00.cmc INFO: Writing jp25300.cmc INFO: Writing jp28650.cmc INFO: Writing jp28DF0.cmc INFO: Writing jp292A0.cmc You can then load these in Chaos Music Composer as normal. The script also supports -reloc XXXX to set the tune address. It defaults to 8400. You can also use -report instead of -out to get a text dump of the tunes.
  5. Here are SAP and XEX: jp2.zip Will see about CMC.
  6. You have to remove the SAP header in order for dis6502 to recognize it as an object file. I've done that for you here: bluemax.zip BM-stripped.obx is just the object file part of the SAP. I also included BM.asm which is the disassembly that dis produced from the SAP file. Cheers, Lyren
  7. For the most part, the SAP format is just a container for a standard Atari object file. Thus, you can strip off the SAP header and directly include it in your own code if you can place your own code such that it doesn't collide with the SAP code and data. You can use a tool like xex-filter, ataricom to get info about the segments in a SAP file with the header removed. Or you can use my disassembler, dis to examine the segments in a SAP file directly. If the music in the SAP file happens to have originated as an RMT file, and was converted by ASAP, RMT itself, or another standard tool, then you could theoretically extract the RMT data, throwing out the RMT player code, to reconstruct the RMT file. I don't know of an automated way to do this. SAP also supports a few other types of content which are not self-contained object files, e.g. TYPE-R which is just a sequence of register values for the POKEY registers. If you have a TYPE-R SAP you can convert it to executable code with dmsc's lzss-sap tool.
  8. This is a really nice piece of software! I'm glad it was ported from the C64. I got it working. You have to give it OS ROMs. Press F9 to get into the Emulation config. Also, you have to change it from the default of an Atari 400 with 16KB of RAM to get most things running. Press Control-Y to enable keyboard joystick with arrow keys and right Alt key as fire. I think it's already shown me a sort-of bug in Bomber that I never knew existed. It shows a strange memory reading pattern that seems to span the entire address space. Pretty cool.
  9. You're quite welcome. Sure, sounds fun. I've opened a new thread where people can post requests:
  10. I'm opening a thread where people can post requests for new SAP conversions. In other words, if you can't already find it in the ASMA, and you would like an SAP version of the music in a game, demo or other program, post it here and I or someone else can take a crack at converting it. Here's an example conversion:
  11. @Poison Here's one with all 9 sub-songs: sabath-subsongs.zip It's quite hacky. Hopefully it works in all SAP players.
  12. Here you go: sabath.zip I used Altirra to write out about 6 minutes of the demo to a TYPE R SAP file (Record -> Record SAP type R). Then I used dmsc's lzss code to create a 7K XEX. Then I modified lzss's code to be playable as a TYPE B SAP. Link to dmsc's lzss code:
  13. FujiConvert 0.3.3 https://lybrown.github.io/fujiconvert/ Changes Replaced "8 8 1" preset with "16 8 0" preset. "16 8 0" will produce 16 coarse levels and 8 fine levels as phaeron suggests. @CharlieChaplin It sounds like you might have a ground loop in your audio recording setup. So it's a bit hard to gauge the quality of the output with the distortion that adds. It sounds like the fine levels are working. The waveforms look OK. I don't hear much difference between "PDM16" and "PDM14" which is good. That means the fine channel is properly calibrated for each scenario. The Mfn video sound is quite nice but in addition to the ground hum, it has the 15KHz carrier which drowns out some noise you might otherwise hear. The PWM method probably has the most linear response curve out of PWM, PDM and PCM since it doesn't depend on POKEY's volume levels. It just alternates between the lowest and highest volumes at X kHz and varies the duty cycle. FujiConvert has special handling for PWM at 8kHz, 15kHz and 31kHz to sync to the scan line which should avoid jitter from RAM refresh cycles.
  • Create New...