Jump to content

Wrathchild

Members
  • Content Count

    2,480
  • Joined

  • Last visited

Everything posted by Wrathchild

  1. Well if team Hoaxers don't snap you up with a Premier League player's salary then somethings not right with the world
  2. Also, I can attest to using multi-dimensional arrays in C using CC65 and whilst it is good while developing you get to a point where the overheads needed to calc the data access are too much and so you end up refactoring to using a single-dimension array instead, so the grass isn't always greener.
  3. From what I recall, as PotGo is used to discharge the capacitors its basically the time needed for these to settle again. That could be established by using a few fixed value from the paddles, set the Critical flag so that stage 2 routines aren't used and use a Pokey timer routine to set the shadow values and then write to PotGo. Start short and if the values in the shadow registers don't match the expected values then lengthen the timer. Equally you could probably achieve this equally as well with a loop to monitor VCount or use DLIs.
  4. It's just padded to a nice round $60000 bytes and doesn't utilise compression. It was merely a quick throw-together as I'd done a fair amount of investigation toward making an Atarimax cart version.
  5. Not an ATX, Thom was stating that the ATR uploaded loads under RespeQt.
  6. The issue would appear to be down to this section: So the VCOUNT check determines which code path is taken etc. In Altirra I used the trace: bt $b49f "$%02x $%02X" db($14) db($d40b) With PAL accurate timing this gives outputs of: $0b $2C $0b $26 $0b $21 $0b $1C $0b $17 $0b $11 $0b $0C $0b $07 $0b $02 $0b $99 $0b $93 $0b $8E $0b $89 $0b $84 $0b $7F $0a $79 $0a $74 and this stops there and the load continues. Whereas with accurate timing off it returns: $04 $25 $04 $32 $04 $3A $04 $24 $04 $1A $04 $26 $04 $23 $04 $17 $04 $1B $04 $01 $04 $26 $04 $44 $04 $70 $04 $90 $04 $13 $04 $2F $04 $44 $04 $5A $04 $5E ... and so the load is screwing up
  7. So as both crash in Altirra if 'Use accurate timing' isn't checked, then I suspect it's going to be down to not all protection being removed, which would indicate that RespeQt is honouring the timings?
  8. Reading this, just sounds like the image you are using is does not have all the protection removed, despite the report in post #4 that Farb's crack should?
  9. As the OP mentioned Ultima, it's worth referencing that some multi-disk titles were also converted to run from cartridge. To be fair, there aren't a great number of candidates and the majority of those seem to assume there is one drive only and so not check for other drives. For example, some that use the first side of a disk as a loader and then only use the second side can pretty much run as-is from an SIO2PC device, i.e. when prompted you change disk 1 to next image. I've none planned currently and the next one I'd want to attempt will most likely be Omnitrend Software's Universe, or the Synapse Electronic Novels. Patching multi-disk games to use multiple drives would make sense if these were to be played on actual hardware, but for using SIO2x devices or cartridges that can mount larger images then the single-ATR approach makes more sense IMO. So here would be a good thread to post candidates.
  10. Mask Of the Sun (Post #1) and Serpent's Star (Post #33) The Dark Crystal (Post #2) Winter Olympiad 88 (Post #1) The Dallas Quest (Post #1) Infocom Adventures (Post #10)
  11. Just wondering whether its easier to do this whilst the ROM is in the A8? e.g. use the small basic program from this thread.
  12. That was just on the 8MBit AFAIK. The 1MBit starts with bank 0.
  13. Though it would involve cracking the case and replacing the ROM, there is a patched version Demon Attack As for Gateway to Apshai, there's one in the AtariMax 8Mbit compilation attached. But there is also the Temple of Apshai Trilogy cart that @Shawn Jefferson created. Randy's 8 MBit Multicart #2.car Temple of Apshai Trilogy (1mb maxflash image allows game save).car demon_attack_xl.bin
  14. By the sheer presence of the jtag pins it looks so
  15. So by bigger chip are you meaning that it has capacity for 4 pokeys already AND space for the SIDs/Covoxes/YM OR you sacrifice say 2 pokeys for a SID etc?
  16. Mad Pascal and 7800 Basic are cross-tools, whereas FB can be used as a cross-tool but also run natively. So extending FB to incorporate its own assembler would not seem an appropriate thing to do but @dmsc can elaborate.
  17. I was initially looking to help out on this thread but then it sounds as if the OP's issue is more in the wav2cas stage than using Altirra. Enabling the '.caslogdata' gives the extra detail: CAS: Reading block[82] = 20 (pos = 161.861s) So whether you'd actually ever see an error within block I'm not sure? Whereas the following line always appears: CAS: Completed read with status 01 to buffer $03FD; control=FA, position=161.88s (cycle 5173633), baud=599.45s, checksum=B1 Is there a way to disable that?
  18. If you are loading the CAS file into Altirra then with the debugger enabled you will see 'CAS' trace messages as blocks are loaded but you can also enable other logging, e.g. '.caslogdata', to provide extra detail SIO: Device $60[0], command $52, buffer $03FD, length $0083, aux $8000 timeout 45.0s | ? CAS: Reading block[02] = fa (pos = 159.727s) CAS: Reading block[03] = 5f (pos = 159.744s) CAS: Reading block[04] = 5f (pos = 159.761s) CAS: Reading block[05] = 5f (pos = 159.777s) CAS: Reading block[06] = 20 (pos = 159.794s) CAS: Reading block[07] = 2d (pos = 159.811s) CAS: Reading block[08] = 20 (pos = 159.827s) CAS: Reading block[09] = 2d (pos = 159.844s) CAS: Reading block[0a] = 20 (pos = 159.861s) CAS: Reading block[0b] = 2d (pos = 159.877s) CAS: Reading block[0c] = 20 (pos = 159.894s) CAS: Reading block[0d] = 2d (pos = 159.911s) CAS: Reading block[0e] = 20 (pos = 159.927s) CAS: Reading block[0f] = 2d (pos = 159.944s) CAS: Reading block[10] = 20 (pos = 159.961s) CAS: Reading block[11] = 2d (pos = 159.977s) CAS: Reading block[12] = 20 (pos = 159.994s) CAS: Reading block[13] = 2d (pos = 160.011s) CAS: Reading block[14] = 20 (pos = 160.027s) CAS: Reading block[15] = 2d (pos = 160.044s) CAS: Reading block[16] = 20 (pos = 160.061s) CAS: Reading block[17] = 2d (pos = 160.077s) CAS: Reading block[18] = 20 (pos = 160.094s) CAS: Reading block[19] = 2d (pos = 160.111s) CAS: Reading block[1a] = 18 (pos = 160.127s) CAS: Reading block[1b] = 3c (pos = 160.144s) CAS: Reading block[1c] = da (pos = 160.161s) CAS: Reading block[1d] = 44 (pos = 160.177s) CAS: Reading block[1e] = 5a (pos = 160.194s) CAS: Reading block[1f] = ba (pos = 160.211s) CAS: Reading block[20] = 46 (pos = 160.227s) CAS: Reading block[21] = 96 (pos = 160.244s) CAS: Reading block[22] = 36 (pos = 160.261s) CAS: Reading block[23] = 03 (pos = 160.277s) CAS: Reading block[24] = 29 (pos = 160.294s) CAS: Reading block[25] = 11 (pos = 160.311s) CAS: Reading block[26] = 36 (pos = 160.327s) CAS: Reading block[27] = 90 (pos = 160.344s) CAS: Reading block[28] = 2d (pos = 160.361s) CAS: Reading block[29] = 90 (pos = 160.377s) CAS: Reading block[2a] = 25 (pos = 160.394s) CAS: Reading block[2b] = 0e (pos = 160.411s) CAS: Reading block[2c] = 40 (pos = 160.427s) CAS: Reading block[2d] = 01 (pos = 160.444s) CAS: Reading block[2e] = 00 (pos = 160.461s) CAS: Reading block[2f] = 00 (pos = 160.477s) CAS: Reading block[30] = 00 (pos = 160.494s) CAS: Reading block[31] = 00 (pos = 160.511s) CAS: Reading block[32] = 14 (pos = 160.527s) CAS: Reading block[33] = 1d (pos = 160.544s) CAS: Reading block[34] = 07 (pos = 160.561s) CAS: Reading block[35] = 90 (pos = 160.577s) CAS: Reading block[36] = 22 (pos = 160.594s) CAS: Reading block[37] = 0e (pos = 160.611s) CAS: Reading block[38] = 40 (pos = 160.627s) CAS: Reading block[39] = 20 (pos = 160.644s) CAS: Reading block[3a] = 00 (pos = 160.661s) CAS: Reading block[3b] = 00 (pos = 160.677s) CAS: Reading block[3c] = 00 (pos = 160.694s) CAS: Reading block[3d] = 00 (pos = 160.711s) CAS: Reading block[3e] = 1b (pos = 160.727s) CAS: Reading block[3f] = 29 (pos = 160.744s) CAS: Reading block[40] = 36 (pos = 160.761s) CAS: Reading block[41] = 90 (pos = 160.777s) CAS: Reading block[42] = 2d (pos = 160.794s) CAS: Reading block[43] = 0e (pos = 160.811s) CAS: Reading block[44] = 40 (pos = 160.827s) CAS: Reading block[45] = 01 (pos = 160.844s) CAS: Reading block[46] = 00 (pos = 160.861s) CAS: Reading block[47] = 00 (pos = 160.877s) CAS: Reading block[48] = 00 (pos = 160.894s) CAS: Reading block[49] = 00 (pos = 160.911s) CAS: Reading block[4a] = 16 (pos = 160.927s) CAS: Reading block[4b] = f2 (pos = 160.944s) CAS: Reading block[4c] = 03 (pos = 160.961s) CAS: Reading block[4d] = 12 (pos = 160.977s) CAS: Reading block[4e] = 0f (pos = 160.994s) CAS: Reading block[4f] = 36 (pos = 161.011s) CAS: Reading block[50] = 99 (pos = 161.027s) CAS: Reading block[51] = 2d (pos = 161.044s) CAS: Reading block[52] = 40 (pos = 161.061s) CAS: Reading block[53] = 3a (pos = 161.077s) CAS: Reading block[54] = 82 (pos = 161.094s) CAS: Reading block[55] = 37 (pos = 161.111s) CAS: Reading block[56] = 90 (pos = 161.127s) CAS: Reading block[57] = 2c (pos = 161.144s) CAS: Reading block[58] = 2c (pos = 161.161s) CAS: Reading block[59] = 14 (pos = 161.177s) CAS: Reading block[5a] = 12 (pos = 161.194s) CAS: Reading block[5b] = 24 (pos = 161.211s) CAS: Reading block[5c] = 16 (pos = 161.227s) CAS: Reading block[5d] = 00 (pos = 161.244s) CAS: Reading block[5e] = 80 (pos = 161.261s) CAS: Reading block[5f] = 06 (pos = 161.277s) CAS: Reading block[60] = 06 (pos = 161.294s) CAS: Reading block[61] = 34 (pos = 161.311s) CAS: Reading block[62] = 16 (pos = 161.327s) CAS: Reading block[63] = 0d (pos = 161.344s) CAS: Reading block[64] = 48 (pos = 161.361s) CAS: Reading block[65] = 3a (pos = 161.377s) CAS: Reading block[66] = 43 (pos = 161.394s) CAS: Reading block[67] = 48 (pos = 161.411s) CAS: Reading block[68] = 49 (pos = 161.427s) CAS: Reading block[69] = 43 (pos = 161.444s) CAS: Reading block[6a] = 4b (pos = 161.461s) CAS: Reading block[6b] = 45 (pos = 161.477s) CAS: Reading block[6c] = 4e (pos = 161.494s) CAS: Reading block[6d] = 2e (pos = 161.511s) CAS: Reading block[6e] = 42 (pos = 161.527s) CAS: Reading block[6f] = 41 (pos = 161.544s) CAS: Reading block[70] = 53 (pos = 161.561s) CAS: Reading block[71] = 16 (pos = 161.577s) CAS: Reading block[72] = 5f (pos = 161.594s) CAS: Reading block[73] = 5f (pos = 161.611s) CAS: Reading block[74] = 5f (pos = 161.627s) CAS: Reading block[75] = 5f (pos = 161.644s) CAS: Reading block[76] = 5f (pos = 161.661s) CAS: Reading block[77] = 5f (pos = 161.677s) CAS: Reading block[78] = 5f (pos = 161.694s) CAS: Reading block[79] = 5f (pos = 161.711s) CAS: Reading block[7a] = 5f (pos = 161.727s) CAS: Reading block[7b] = 5f (pos = 161.744s) CAS: Reading block[7c] = 5f (pos = 161.761s) CAS: Reading block[7d] = 5f (pos = 161.777s) CAS: Reading block[7e] = 5f (pos = 161.794s) CAS: Reading block[7f] = 5f (pos = 161.811s) CAS: Reading block[80] = 5f (pos = 161.827s) CAS: Reading block[81] = 5f (pos = 161.844s) CAS: Reading block[82] = 20 (pos = 161.861s) CAS: Completed read with status 01 to buffer $03FD; control=FA, position=161.88s (cycle 5173633), baud=599.45s, checksum=B1
  19. @phaeron perhaps '.caslogdata' be made consistent with other toggle settings and use 'on' and 'off' parameters (e.g. '.tracecio') so that entering the command shows the state rather than toggles it?
  20. um during testing you want the guards because they consume resources and can help with timing issues and final game-play feel and fluidity.... I would think level breakpoints and saves would be a wiser choice for dev so you don't have to walk through the whole thing every time when testing on real hardware. Turning off damage subtraction from their attacks, so that falling still kills you?
  21. That seems a really nice clean output, is that solely from the monitor port?
  22. I thought these were 'optimistic'
×
×
  • Create New...