phaeron Posted June 30, 2012 Author Share Posted June 30, 2012 Try now: http://www.virtualdub.org/beta/Altirra-2.10-test32.zip http://www.virtualdub.org/beta/Altirra-2.10-test32-src.zip Quote Link to comment Share on other sites More sharing options...
Caterpiggle Posted June 30, 2012 Share Posted June 30, 2012 After I did download 2.10-test32.zip and I still see the rainbow background ? Is that normal cycle ? What this do with memory test ? Can you be kind to add "Happy.rom" for Happy mode in Atari 1050 virtual ? Can you do that for us, Atari Users ? Quote Link to comment Share on other sites More sharing options...
serj Posted June 30, 2012 Share Posted June 30, 2012 Caterpiggle, run the emulator (test 32). Run file: file ---> boot image ---> altirramapramtest.obx turn on the option to System ---> memory size ---> MapRAM Reset the "Shift + F5" after this test is passed. mapRAM works. Thanks for the update Avery. Quote Link to comment Share on other sites More sharing options...
Caterpiggle Posted June 30, 2012 Share Posted June 30, 2012 Ok, what I see the alphabets & numbers test mode and background changed from pink to yellow cycle, is that correct at this time ? Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted June 30, 2012 Share Posted June 30, 2012 No, you should be seeing a blue screen with ok in the top left. The only way I can get a rainbow is either not to have the maprom enabled under memory or to be in 800 mode, XL and 1200 mode work fine and give the ok, I've tried every thing to recreate what you see but all I say is check you are in XL mode preferably using the XL bios (although Phaeron's HLE mode works). As long as Maprom is ticked in beta 32 it should be giving that ok... Just checking it is beta 32 you are using incase you missed the update from 31? Quote Link to comment Share on other sites More sharing options...
Caterpiggle Posted June 30, 2012 Share Posted June 30, 2012 I did not downloaded 31 , just from 30 to 32 leap. I read that file is for storage highest scores for any games associated with atr or xex files. Is that right ? Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted June 30, 2012 Share Posted June 30, 2012 I did not downloaded 31 , just from 30 to 32 leap. I read that file is for storage highest scores for any games associated with atr or xex files. Is that right ? I know XXL has developed a use for it doing the high scores, not sure if there's any other already developed uses so far but its all good. Hope you get the maprom thing working, based on what I wrote previously (and Sergeys message) it should be working for you. Quote Link to comment Share on other sites More sharing options...
Roydea6 Posted June 30, 2012 Share Posted June 30, 2012 Ok, what I see the alphabets & numbers test mode and background changed from pink to yellow cycle, is that correct at this time ? This is what I get also, but I did download also the other file mentioned and I get the OK! and blue screen. Quote Link to comment Share on other sites More sharing options...
xxl Posted June 30, 2012 Share Posted June 30, 2012 works fine thanks! now it is much easier to play. http://www.youtube.com/watch?v=3g9t5ED61Gg&feature=youtu.be banner (You are not allowed to use that image extension on this community.) http://atari.pl/hsc/1up.php?i=1.0 Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 1, 2012 Share Posted July 1, 2012 Is your Xbios available to use with this util? If its private then no problem... Quote Link to comment Share on other sites More sharing options...
ilmenit Posted July 2, 2012 Share Posted July 2, 2012 Altirra is so great! I love it! :-) Phaeron, did you put the sprite repositioning fixes that you have mentioned in the RastaConverter thread? Quote Link to comment Share on other sites More sharing options...
Xuel Posted July 2, 2012 Share Posted July 2, 2012 Altirra is so great! I love it! :-) Phaeron, did you put the sprite repositioning fixes that you have mentioned in the RastaConverter thread? I think this was done back in 2.1-test25: virtualdub.org (search for Quantizator), atariage.com, emucr.com. Quote Link to comment Share on other sites More sharing options...
phaeron Posted July 3, 2012 Author Share Posted July 3, 2012 Yes, current test releases have the sprite repositioning fixes. This includes both the horizontal blank issue and the overlapping image behavior. Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 3, 2012 Share Posted July 3, 2012 Hi Avery, Can't get BITS1505 demo to run on Altirra http://thebitsclub.tripod.com/ Debugger says its hit an illegal instruction.. Quote Link to comment Share on other sites More sharing options...
Rybags Posted July 3, 2012 Share Posted July 3, 2012 It's often a good idea to allow illegal instructions, and untick "stop on BRK". Plenty of software uses the "useful" illegal instructions, often it was just to throw off crackers, sometimes to save memory/cycles. Quote Link to comment Share on other sites More sharing options...
+Stephen Posted July 3, 2012 Share Posted July 3, 2012 It's often a good idea to allow illegal instructions, and untick "stop on BRK". Plenty of software uses the "useful" illegal instructions, often it was just to throw off crackers, sometimes to save memory/cycles. I get the same error though, and I have the above mentioned options set. Atari 800 Win + runs this. Quote Link to comment Share on other sites More sharing options...
phaeron Posted July 4, 2012 Author Share Posted July 4, 2012 Ugh. I need to test this on a real Atari, but I don't have them handy with me right now. This demo has two horrible bugs. The first is that the DLI is too long -- P/M on, LMS on 224 horizontally scrolled narrow mode F lines means 57 cycles available after DMA. Problem is, the DLI is 59 cycles long, so this demo piles up RTI instructions on the stack. The second is that it changes HSCROL at random locations in the scanline, which can lengthen or shorten the mode line and more importantly blow the playfield start and stop deadlines. On Altirra, the DLI is recursing often enough to overflow the stack. I'll have to analyze the HSCROL write timings over a frame to figure out exactly what's going on. Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 4, 2012 Share Posted July 4, 2012 (edited) I tried to run it on my XL but the executable is classed as broken by Aspeqt, missing a file it says.. Seems this might have been coded on an emulator..? Anyone with a bigger brain than me fancy converting it and trying on a real machine? Edited July 4, 2012 by Mclaneinc Quote Link to comment Share on other sites More sharing options...
Xuel Posted July 4, 2012 Share Posted July 4, 2012 (edited) I tried to run it on my XL but the executable is classed as broken by Aspeqt, missing a file it says.. Seems this might have been coded on an emulator..? Anyone with a bigger brain than me fancy converting it and trying on a real machine? The segment length is one byte too long. If you have the console open when you load the executable in Altirra you get this message: WARNING: Invalid Atari executable: bad start/end range. EXE: Loading program 0006-3AA9 to 2000-5AA4 Here's a version with an extra zero byte tacked on the end to make the segment length match up: BITS1505-segment-fix.XEX Edited July 4, 2012 by Xuel Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 4, 2012 Share Posted July 4, 2012 (edited) Thanks for that, I can now confirm that the demo crashes and reboots my PAL XL continuously... Probably proves it was written on an emulator, most likely win plus. Apologies to Avery for getting you to bug hunt someone's crap code.. Edited July 4, 2012 by Mclaneinc 1 Quote Link to comment Share on other sites More sharing options...
Caterpiggle Posted July 4, 2012 Share Posted July 4, 2012 Still failed to run BITS1505 on my Altirra build test 32.... Quote Link to comment Share on other sites More sharing options...
phaeron Posted July 4, 2012 Author Share Posted July 4, 2012 Yeah, I figured as much. After examining a frame I found out that it's even worse in that it toggles between HSCROL values that would cause ANTIC to miss the playfield stop entirely, triggering the DMA-across-horizontal-blank bug. I'm pretty sure this demo is outright broken on any real hardware. No self-respecting Atari coder would ever use .PRG for a program file extension anyway. Fixing the demo to work is left as an exercise for the reader.... Quote Link to comment Share on other sites More sharing options...
Rybags Posted July 4, 2012 Share Posted July 4, 2012 The "DMA across HBlank bug"... is that documented ? Any useful ideas for it at all? Quote Link to comment Share on other sites More sharing options...
phaeron Posted July 5, 2012 Author Share Posted July 5, 2012 It's the same old as yet unemulated bug. Essentially, there are only two places where ANTIC attempts to stop the playfield clock: at the right edge of the playfield and at regular intervals in horizontal blank. There are two ways to move the stop points, DMACTL and HSCROL. If you screw around with DMACTL, the worst you get is some funny length lines, because all of the playfield width settings have stop cycles that are multiples of 16 apart and eventually the playfield clock will be stopped in horizontal blank if nothing else. HSCROL is more dangerous because it can shift the pattern such that the clock won't be stopped in HBLANK. This happens because HSCROL can't shift the current DMA pattern -- the bits are already flying around the playfield clock -- but it can move the stop. If bit 1 is different at high speed (modes 2-5/D-F), bits 1-2 at medium speed (modes 6-7/A-C), or bits 1-3 at low speed (modes 8-9), ANTIC will miss the stop and the playfield clock will keep running. Now, there is hardcoded logic to block playfield fetch requests at the beginning of horizontal blank, so you get playfield to the right edge and then everything goes quiet for a moment. Problem is, the DMA restriction is lifted at the start of the next scanline where special DMA needs to occur and that's where the pain starts: the special DMA and playfield DMA will both fire at the same time. When they coincide, you fetch occurs at the logical AND of the two addresses and the same data is sent to both the playfield and display list or P/M graphics. The playfield clock will keep running into the next scanline, and if the pattern is different again, it can result in solid DMA and block the CPU for several dozen cycles. This combined with the memory scan counter having counted way beyond where it should have generally results in a totally trashed display. Needless the say, what you mainly need to know about this bug is that you don't want it. Quote Link to comment Share on other sites More sharing options...
Mclaneinc Posted July 5, 2012 Share Posted July 5, 2012 (edited) I presume there's nothing that actually uses the bug (sounds very unlikely)? If not surely its not worth the time and effort even for your search for completeness to implement it? Edited July 5, 2012 by Mclaneinc 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.