Activity
From 07/30/2018 to 08/28/2018
08/28/2018
- FO 09:45 PM Bug #74: Mounted disks don't always load
- Added more structure to the command handling (common ack/nak etc) and looking much better. More to do though...
- FO 09:57 AM Bug #74: Mounted disks don't always load
- I guess a disk revolution at 288rpm is 200ms, so it must be ok timing wise to do the ack first.
08/27/2018
- FO 09:34 PM Bug #74: Mounted disks don't always load
- The time spent on iii is in pf_open, the fat file system open. I guess this must do some work.
Perhaps if I ack first then the Atari will give me more time to handle this in piece... This will mean with the current approach that code ... - FO 09:22 PM Bug #74: Mounted disks don't always load
- So 3 problems...
i) Sometimes bad checksum, must be a sync issue with pokey clock I guess.
ii) Flip flopping between fast and slow too quickly to make sense.
iii) Seems to be very slow to ready 16 bytes from sd card (atr header), Atar...
08/26/2018
- FO 09:41 PM Bug #74: Mounted disks don't always load
- Hmmm, gets a failed checksum on the first sector read and switches to high speed sio. Then takes a while to resync.
Now need to see why I get a bad checksum (tomorrow). - FO 08:45 PM Bug #74: Mounted disks don't always load
- Setting up the logic analyser to check the cause of the first few fails on the scanalyzer...
- FO 08:51 AM Feature #73: Implement ATX disk image support
- Thanks. It loaded more on the 400/800 rom (but not that far) and stopped early on the XL/XE. I think I have the patched xformer rom, perhaps that is why.
From the check suite 102:
I am getting OK/NOK/OK/OK and then the L3 highlighted...
08/25/2018
- FA 06:00 PM Feature #73: Implement ATX disk image support
- I just tried it with SDrive Max and Eclaire in XL/XE mode. It loaded and I got to the point that the plane was on the runway ready for take-off.
- FO 05:31 PM Feature #73: Implement ATX disk image support
- Hmm, will check the timing some more.
Does flight sim II work on the max? I remember that being time sensitive and get lots of system errors loading it. - FA 03:58 PM Feature #73: Implement ATX disk image support
- I just tested Bandits with SDrive Max and Eclaire XL in 800 mode. It works fine. You need to wait until the full game attract mode starts (e.g. full gameplay is shown with attacking ships moving on the screen).. The game loads from disk ...
- FO 08:41 AM Feature #73: Implement ATX disk image support
- Hmm, Bandits just worked with no change. Perhaps related to the other sector error issue.
- FO 08:31 AM Feature #73: Implement ATX disk image support
- I'll put it up as atxv4 shortly.
Tested the few you sent. They all seem to work, except Bandits still does not play... Does this atx work fully via sdrive to Eclaire (800 mode) but not via this? Wondering if the remaining problem is a... - FA 12:02 AM Feature #73: Implement ATX disk image support
- Fantastic! :-D
08/24/2018
- FO 09:42 PM Feature #73: Implement ATX disk image support
- Now M.U.L.E. works:-) + Bruce Lee.
- FO 09:41 PM Feature #73: Implement ATX disk image support
- Ooops, had the subtraction backwards in waitForAngularPosition, doh.
08/23/2018
- FO 08:40 PM Bug #74: Mounted disks don't always load
- Probably about time I fix this, might be impacting some atx loading too.
08/22/2018
- FA 12:56 PM Feature #73: Implement ATX disk image support
- Here's further info about those two disks:
http://a8preservation.com/#/software/dump/82
http://a8preservation.com/#/software/dump/257
See specifically the "copy protection" row. - FA 12:55 PM Feature #73: Implement ATX disk image support
- I believe phantom and duplicate sector are synonymous. Yes, multiple sectors with the same number on a track. Both Agent U.S.A. and Bruce Lee have them in the disks that I provided.
- FO 12:50 PM Feature #73: Implement ATX disk image support
- What is a phantom sector? Same sector number and valid/crc error/weak on same track? Do you have examples for one on one of the disks you sent?
- FA 08:50 AM Feature #73: Implement ATX disk image support
- I quickly confirmed that changing $F7 to $EF didn't break any of the images I ran the Scanalyzer test and it returns the expected status codes. So I will check that fix into the SDrive repository later today. Thanks for pointing it out!
- FA 07:19 AM Feature #73: Implement ATX disk image support
- Hmm, good point. The status bits are active low which would make $F7=11110111 and $EF=11101111. Bit 4 represents record not found so this may very well be a bug in the current ATX code. I will need to test and confirm.
- FO 07:03 AM Feature #73: Implement ATX disk image support
- Why does the code default to 0xf7? It says that means ‘data crc or weak sector’ in the hardware manual. The comment in atx.c says default in case sector not found. Shouldn’t that be 0xef which means ‘record not found’?
Btw scanalyzer ... - FA 06:22 AM Feature #73: Implement ATX disk image support
- As you have already surmised, the status byte returned from loadAtxSector contains the FDC status bits. Are you taking inversion into account correctly? See page 185 of the Altirra Hardware Reference manual: http://www.virtualdub.org/dow...
08/21/2018
- FA 11:27 PM Feature #73: Implement ATX disk image support
- Ok, I tested v3 and saw a few things:
1. Agent U.S.A. and Goonies successfully loaded. Woohoo!
2. Bandits successfully booted when started in 48K Atari 400/800 mode but it causes a reboot when its tries to load the first level in dem... - FO 09:17 PM Feature #73: Implement ATX disk image support
- OK, have to call it a day for today. I'll put up v3 with the latest anyway, though I suspect not much really helped yet...
- FO 09:15 PM Feature #73: Implement ATX disk image support
- OK, can reproduce the same results in the linux sim... Which is good. So its not a missed byte swap (there is no byte swapping on x64).
- FO 09:05 PM Feature #73: Implement ATX disk image support
- Yeah I wired status up right after building atxv2. I am getting back 0xf7 though. Its not finding the sector in the loop, so it returns the default.
I'm getting the linux build working so I can debug more easily... - FA 09:03 PM Feature #73: Implement ATX disk image support
- Glad it is making progress. I did wonder if bug 74 had something to do with what I was seeing. Are you using the status byte that comes back from loadAtxSector?
- FO 08:33 PM Feature #73: Implement ATX disk image support
- OK, little better. Now getting 247 on 19,20,... and 28,32. Investigating why the status is not 239 now.
- FO 08:26 PM Feature #73: Implement ATX disk image support
- I think the first few errors may be related to the bug 74 you raised.
I do see failure on those sectors though I was returning NAK instead of ERR and data. I'll try the latter. - FO 07:00 PM Feature #73: Implement ATX disk image support
- If it’s that broken I wonder why air strike, Bruce Lee and lode runner work.
I’ll try that tool... - FA 07:28 AM Feature #73: Implement ATX disk image support
- I did some further testing and something definitely seems quite wrong. I can understand timing problems causing duplicate sector or timing-based protection checks to fail, but it seems like everything I try is having problems.
Here's ...
08/20/2018
- FA 10:16 PM Bug #74 (Closed): Mounted disks don't always load
- I have been seeing some strange disk loading behavior for the past few builds. Intermittently, when I mount a disk and cold reset the computer, it behaves like no disk is present and goes to the memo pad/self test. I haven't been able to...
- FA 10:14 PM Feature #73: Implement ATX disk image support
- I should add (in case it wasn't completely clear) that all those titles work with the current version of atx.c.
- FA 10:06 PM Feature #73: Implement ATX disk image support
- I just tried atxv2 as well.
It sounds to me like the "slow" parts are too slow and the "speed-ups" are too fast. I know, very scientific :-P If I had to guess from the sounds, it seems like revs are constantly being blown which is why... - FO 09:54 PM Feature #73: Implement ATX disk image support
- An aside, but noticed I seem to have a bunch of hexdumps still in this code. Better remove them since I'm sure they trash mem on some programs!
- FO 09:51 PM Feature #73: Implement ATX disk image support
- Nope, still seems to hang on most things. Hmmm.
- FO 09:50 PM Feature #73: Implement ATX disk image support
- Trying to hook up sector status to 0x53 to see if that helps
- FO 09:34 PM Feature #73: Implement ATX disk image support
- Fixed that and put it up as atxv2.
Load a bit quicker, but still only a few things seems to work (baker street and airstrike so far...) - FO 09:09 PM Feature #73: Implement ATX disk image support
- Seems that it was just a + vs - issue when calculating the wait on rotation. Doh.
- FO 06:31 PM Feature #73: Implement ATX disk image support
- I think something might be wrong with track step or something. Since its loads slow, slow slow, then occasional fast. I'd expect fairly fast then pause for track step etc.
- FO 06:30 PM Feature #73: Implement ATX disk image support
- I've put the rpd there now.
- FA 05:11 PM Feature #73: Implement ATX disk image support
- I am not aware of anything that exists like that today but think it is an excellent idea. I have reached out to some Atari folks that may be able to help in creating such an ATX :-)
- FO 07:51 AM Feature #73: Implement ATX disk image support
- Oh, forgot to copy that! Will do that this evening.
I was thinking a test suite would be great. On an atx that boots on the Atari then checks a few comment metrics/protection types. Do you know if there is anything like that at all yet?
08/19/2018
- FA 09:30 PM Feature #73: Implement ATX disk image support
- That is great news. I'm happy to test it out. How do I make an .rpd from the .jic and/or .sof?
- FO 09:04 PM Feature #73: Implement ATX disk image support
- Farb, I've put the latest test version here. Can you give it a try please since you are more familiar with how the beeps should sound/what current works?
http://www.64kib.com/autobuild/private/prototype_v2/atxv1.jic and http://www.64kib... - FO 08:44 PM Feature #73: Implement ATX disk image support
- Added byte swapping and changed the wait_us delays to be in us. For some reason wait_us(3.22*1000) was hanging rather then ending up as wait_us(3220).
Some files are loading.
08/18/2018
- FO 09:52 PM Feature #73: Implement ATX disk image support
- Looks an an endian issue. I see AT8X ok, then version is 256...
08/17/2018
- FO 09:33 PM Feature #73: Implement ATX disk image support
- If I comment loadAtxSector it does not hang, so must be something stuck in a loop in there. Will instrument and printf debug I guess :-)
- FO 09:27 PM Feature #73: Implement ATX disk image support
- Now the core is working again in general: USB, atr, xex. I can insert atx disks, but they fail to load - firmware hangs. Unfortunately debugging is a pain, might see if I can get the linux build Hias made working again...
08/16/2018
- FO 10:03 PM Feature #73: Implement ATX disk image support
- I got the core building but I've broken it enough that usb no longer works... ooops, will have to debug another day.
- FO 10:02 PM Feature #73: Implement ATX disk image support
- There are the default (original) sdrive delays in us iirc. If an ack is sent too soon it can arrive before the sio code is ready I think etc. Since the atx code does not appear to specify when to ack/cmpl I left them in.
- FA 09:58 PM Feature #73: Implement ATX disk image support
- I'm not sure what DELAY_T2_MIN, DELAY_T5_MIN, etc. actually represent here so unfortunately I can't comment on that specifically. But I wanted to point out that one thing the SDrive Max's ATX code does not simulate (because a real serial...
- FO 09:46 PM Feature #73: Implement ATX disk image support
- Changed the timer/pause reg to be in microseconds and exact (USB clock/48 with clock domain crossing by toggle)
Added a register timer2, which has a threshold for reset. Using that to track the angle (in us)
Used the pokey 17-bit lsfr ...
08/12/2018
- FO 09:36 PM Mini EclaireXL
- Panos is working on a very neat cut size PCB that includes most of the features. See [[http://atariage.com/forums/topic/281810-atari-compatible-hardware-eclairexl-in-mini-form/]] for details.
This is not mini-ITX so will need a custom... - FO 09:34 PM Feature #73: Implement ATX disk image support
- DELAY_T2_MIN (100uS)
ACK
loadAtxSector
(NAK if failed)
DELAY_T5_MIN (300uS)
CMPL
DELAY_T3_PERIPH (150uS)
send buffer
send checksum (Should I be recomputing this?) - FO 09:31 PM Feature #73: Implement ATX disk image support
- Also plumbed into the atari_drive_emulator.c in a similar fashion to the xex loader.
gAtxFile = file;
u08 status; // what use is this?
... - FO 09:28 PM Feature #73: Implement ATX disk image support
- Made a start on this...
* Made atx.c/h build by pointing to different headers.
* Pointed delay_ms to existing wait_us. This is approximate based on a clock of 1.79MHz, will 1-2% error matter here? Will re-implement based on USB 12MHz...
08/01/2018
- FO 10:05 PM Bug #48 (Closed): CORE13 - Veronica BASIC not working
- Closed. Working fine with my Veronica clone and no feedback received from tester.
- FO 10:02 PM Feature #3 (New): High resolution antic support
- Paused until anyone uses it. If it starts getting used I might fix the offsets...
- FO 10:01 PM Bug #25 (New): F10 Hard Reset Ignore inserted cartridge (Core v7)
- FO 10:01 PM Bug #64 (Closed): Pokey pdm timing incorrect
- Found the issue when doing the pokeymax work - I'd lost some changes by accident.
- FO 10:00 PM Feature #72 (Closed): Implement stock Atari 400 mode
- OK, so for all intents and purposes I think its the same. At least until we add the split bus for the 800... I added 8k mode. OS A should already work, but I didn't add it to the standard profiles.
- FO 09:58 PM Feature #68 (Closed): Implement stock Atari 800 mode
- Great! Going to close this until I decide to add 2 bus support or you find a bug in it:-)
I mean the profiles. There are 4 slots saved to the flash chip. They are by default:
1) 576k compy pal vga with basic c and hias hi-speed patch... - FA 09:14 PM Feature #68: Implement stock Atari 800 mode
- That worked! I tested both variants of Archon, MULE and One on One and they all loaded just fine. Great job! Now I just need to figure out what you mean by OS slots :-P
- FO 08:16 PM Feature #68: Implement stock Atari 800 mode
- OK, I built v27. This has a single floating data bus. I also updated the os rom in slot 4 to this one:
10 KB 0x0e86d61d 4177f386a3bac989a981d3fe3388cb6c Atari OS SYSROM_B_NTSC OS-B 1981 NTSC Production ROM, OS from late NTSC Ata... - FA 05:23 PM Feature #68: Implement stock Atari 800 mode
- From phaeron:
Altirra implements a single floating bus by default for 800 and XE hardware profiles and has an opt-in for 800 dual floating buses (Memory > Enable floating I/O bus). The only game I know of that requires that is Warhawk... - FA 05:20 PM Feature #68: Implement stock Atari 800 mode
- From Ijor on the protection details:
IIRC it expects to be variable, non constant. The 800 doesn't have pullups on the data bus. So accessing an unoccupied address, as the CXXX in the 800, will return noise. That's why the earlier ver... - FO 10:54 AM Feature #68: Implement stock Atari 800 mode
- I guess it’s checking c000-cfff then?
I’ll try adding a floating data bus... - FA 07:55 AM Feature #68: Implement stock Atari 800 mode
- The OS ROM I'm using has a CRC of 0e86d61d.
- FO 07:47 AM Feature #68: Implement stock Atari 800 mode
- Did you load the original OS B or use the one off the jic? I think the one I included on the jic is patched. I should find the original...
- FO 07:46 AM Feature #68: Implement stock Atari 800 mode
- I’d better wire up the atx code so I can try it myself:)
- FO 08:28 PM Core v27
- Small update to try to get some atx stuff working...
Single floating data bus: atari800 non-present ram and D1/D5/D6.
Update slot 4 rom to 0x0e86d61d
07/31/2018
- FA 11:20 PM Feature #68: Implement stock Atari 800 mode
- FYI, I tested core 26 and put the Eclaire into 48K 400/800 mode using OS/B (what would even happen if I used XL OS with 400/800 mode?). It still has the same problem with the EA disks as stated in the issue description :-(
- FA 10:48 PM Feature #68: Implement stock Atari 800 mode
- I‘d personally would love to see this get as close as possible to a real Atari 800 but obviously I’m not doing all the hard work :–P
- FO 09:48 PM Feature #68: Implement stock Atari 800 mode
- Fixed the beep on reset. Will build as v26. Not sure whether floating data bus if worth it. Looks like it wasn't even the same on the 400. What do you think?
- FA 09:39 PM Feature #68: Implement stock Atari 800 mode
- This is fantastic progress!!
- FO 09:23 PM Feature #68: Implement stock Atari 800 mode
- That worked... Now for that horrible beep on reset.
- FO 09:17 PM Feature #68: Implement stock Atari 800 mode
- This is due to a brk being hit when it jumps to the cart to initialize it. Making the bus 0xff when no ram present which I think will work.
- FO 08:32 PM Feature #68: Implement stock Atari 800 mode
- Got signal tap on it. Gets part way through booting then hangs at address 000c. This is after memory detection itself, which seems to work fine (0xb0 to 0x0006 in 48k mode, 0x70 to 0x0006 in 32k mode).
- FO 10:30 PM Core v26
- Atari800 mode fixes:
* Made no ram return 0xff, fixes 16k/32k boot since they were detecting a cartridge then crashing
* Added 8k mode. Menu screen also moved below 8k so it works when in this mode!
* Fixed reset bouncing, this was ca...