Project

General

Profile

Activity

From 07/28/2018 to 08/26/2018

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).
foft
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... foft
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...
foft

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. Farb
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.
foft
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 ... Farb
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. foft
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...
foft
FA 12:02 AM Feature #73: Implement ATX disk image support
Fantastic! :-D Farb

08/24/2018

FO 09:42 PM Feature #73: Implement ATX disk image support
Now M.U.L.E. works:-) + Bruce Lee. foft
FO 09:41 PM Feature #73: Implement ATX disk image support
Ooops, had the subtraction backwards in waitForAngularPosition, doh. foft

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. foft

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.
Farb
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. Farb
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? foft
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! Farb
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. Farb
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 ...
foft
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... Farb

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...
Farb
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... foft
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). foft
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...
foft
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? Farb
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. foft
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.
foft
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...
foft
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 ...
Farb

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... Farb
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. Farb
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...
Farb
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! foft
FO 09:51 PM Feature #73: Implement ATX disk image support
Nope, still seems to hang on most things. Hmmm. foft
FO 09:50 PM Feature #73: Implement ATX disk image support
Trying to hook up sector status to 0x53 to see if that helps foft
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...)
foft
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. foft
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. foft
FO 06:30 PM Feature #73: Implement ATX disk image support
I've put the rpd there now. foft
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 :-) Farb
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?
foft

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? Farb
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...
foft
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.
foft

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... foft

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 :-) foft
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... foft

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. foft
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. foft
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... Farb
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 ...
foft

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...
foft
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?)
foft
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?
...
foft
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...
foft

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. foft
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... foft
FO 10:01 PM Bug #25 (New): F10 Hard Reset Ignore inserted cartridge (Core v7)
foft
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. foft
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. foft
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...
foft
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 Farb
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...
foft
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...
Farb
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...
Farb
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...
foft
FA 07:55 AM Feature #68: Implement stock Atari 800 mode
The OS ROM I'm using has a CRC of 0e86d61d. Farb
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... foft
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:) foft
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
foft

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 :-( Farb
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 Farb
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? foft
FA 09:39 PM Feature #68: Implement stock Atari 800 mode
This is fantastic progress!! Farb
FO 09:23 PM Feature #68: Implement stock Atari 800 mode
That worked... Now for that horrible beep on reset. foft
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. foft
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). foft
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...
foft

07/28/2018

FO 08:41 AM Feature #68: Implement stock Atari 800 mode
Tried the salt xex. If I boot it on 48k, then change ram to 16k/32k it returns the expected results. i.e. ram test passes with 2 or 4 banks and rom test passes.
So not sure what is going on. Perhaps the low ram somehow effects the zpu...
foft
 

Also available in: Atom