ST FPGA MMU Development

Progress on our FPGA cores.
User avatar
exxos
Site Admin
Site Admin
Posts: 23497
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: ST FPGA MMU Development

Post by exxos »

Icky and I have been puzzling over the MMU for some days now. I suggested trying my old MEGA 4 into because its the only one I knew which used a lot of rasters... And surprisingly this behaves perfectly correctly. So I wonder if the problem is literally down to full screen operation..

Troed's Closure demo fails to detect the wait states, but I have no idea why as I am not a demo coder... I can only possibly think it may be something to do with 50/60hz switching, but I really would assume all this is done by the GLUE anyway... I'm currently stabbing in the dark as to why the MMU would cause Closure to not detect waitstates :roll: Only as far as we can tell this it may well be the last hurdle to get our FPGA MMU working correctly.

Has anyone any ideas on this, or any programs we can test to see if it gives any clues or not ??


godgibchopmkfjkk.jpg
godgibchopmkfjkk.jpg (70.19 KiB) Viewed 5210 times
https://www.exxosforum.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxosforum.co.uk/atari/store2/ - All my hardware mods for sale - Please help support by making a purchase.
viewtopic.php?f=17&t=1585 Have you done the Mandatory Fixes ?
Just because a lot of people agree on something, doesn't make it a fact. ~exxos ~
People should find solutions to problems, not find problems with solutions.
User avatar
TimNaber
Posts: 67
Joined: Fri Nov 01, 2019 3:20 pm

Re: ST FPGA MMU Development

Post by TimNaber »

Does re-developing the MMU in FPGA allow you the opportunity to raise the limit on total ST memory? Or is it a straight across replacement due to scarcity?
ST: TT030 10/32m; Falcon 030 14m(2); MSTe 4m; MST 4m(3); MST 4m AdSpeed; 1040STf 4m(4); ST 4m(2); MF 44 w/SCSI2SD(3); MF 30(3); MF30 w/Drem

8-Bit: 320XE w/Ultraspeed+/FIXXL; 320XE; 130XE w/Ultimate 1m; 600XL w/Ultimate 1m; 800XL w/Omnimon XL/Boss XL/Omniview XL; 800 w/Incognito; 800 48K; Black Box Enhanced(3); 1050 Super Archiver II; 1050 Happy(2); XF551 360K(2); XF551 720K; HD Tower 480m
User avatar
exxos
Site Admin
Site Admin
Posts: 23497
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: ST FPGA MMU Development

Post by exxos »

TimNaber wrote: Fri Feb 14, 2020 9:25 pm Does re-developing the MMU in FPGA allow you the opportunity to raise the limit on total ST memory? Or is it a straight across replacement due to scarcity?
All of the above, we want to run RAM at 32MHz.
https://www.exxosforum.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxosforum.co.uk/atari/store2/ - All my hardware mods for sale - Please help support by making a purchase.
viewtopic.php?f=17&t=1585 Have you done the Mandatory Fixes ?
Just because a lot of people agree on something, doesn't make it a fact. ~exxos ~
People should find solutions to problems, not find problems with solutions.
czietz
Posts: 548
Joined: Sun Jan 14, 2018 1:02 pm

Re: ST FPGA MMU Development

Post by czietz »

exxos wrote: Fri Feb 14, 2020 9:12 pm Has anyone any ideas on this, or any programs we can test to see if it gives any clues or not ??
Troed's wakestate detection program is open-source and it has some fairly detailed comments what it's checking: https://github.com/troed/WSDETECT/blob/ ... WSDETECT.S.
User avatar
stephen_usher
Posts: 5580
Joined: Mon Nov 13, 2017 7:19 pm
Location: Oxford, UK.
Contact:

Re: ST FPGA MMU Development

Post by stephen_usher »

czietz wrote: Sat Feb 15, 2020 11:19 am
exxos wrote: Fri Feb 14, 2020 9:12 pm Has anyone any ideas on this, or any programs we can test to see if it gives any clues or not ??
Troed's wakestate detection program is open-source and it has some fairly detailed comments what it's checking: https://github.com/troed/WSDETECT/blob/ ... WSDETECT.S.
So, from what I can see the code is using NOP instructions for timing (i.e. a NOP instruction takes x clock cycles to perform, and hence y microseconds on an 8MHz 68000).
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
czietz
Posts: 548
Joined: Sun Jan 14, 2018 1:02 pm

Re: ST FPGA MMU Development

Post by czietz »

Almost all of the timing delays are not done by NOPs (they're actually commented out, see these "dcb.w N,$4e71" lines) but by DBF (=DBRA) loops. But in the end that does not matter. From a high-level perspective, what the code does is switching between color and mono or between 50 and 60 Hz at precise moments. This is why exact timing and, therefore, counting instruction cycles is important. Then the test program calculates the video line length, i.e. how many bytes the MMU transferred to the Shifter. From that, it can infer the wakestate.
User avatar
exxos
Site Admin
Site Admin
Posts: 23497
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: ST FPGA MMU Development

Post by exxos »

@Icky did you try it in mono ? And even 60hz ? I think the diagnostic cart can do 50/60hz switch?
https://www.exxosforum.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxosforum.co.uk/atari/store2/ - All my hardware mods for sale - Please help support by making a purchase.
viewtopic.php?f=17&t=1585 Have you done the Mandatory Fixes ?
Just because a lot of people agree on something, doesn't make it a fact. ~exxos ~
People should find solutions to problems, not find problems with solutions.
User avatar
Icky
Site Admin
Site Admin
Posts: 3986
Joined: Sun Sep 03, 2017 10:57 am
Location: UK

Re: ST FPGA MMU Development

Post by Icky »

exxos wrote: Sat Feb 15, 2020 1:44 pm @Icky did you try it in mono ? And even 60hz ? I think the diagnostic cart can do 50/60hz switch?
I haven't. Will give that a try.
User avatar
exxos
Site Admin
Site Admin
Posts: 23497
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: ST FPGA MMU Development

Post by exxos »

Thanks to @Icky For fixing my FPGA MMU :thumbup: just got it plugged in and it booted right up.. Currently running GB6... tests so far showing 100% as expected..

IMG_4893.JPG
IMG_4893.JPG (118.75 KiB) Viewed 5073 times

EDIT: So annoyingly Closure does not seem to run on a 512K machine :(
https://www.exxosforum.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxosforum.co.uk/atari/store2/ - All my hardware mods for sale - Please help support by making a purchase.
viewtopic.php?f=17&t=1585 Have you done the Mandatory Fixes ?
Just because a lot of people agree on something, doesn't make it a fact. ~exxos ~
People should find solutions to problems, not find problems with solutions.
User avatar
exxos
Site Admin
Site Admin
Posts: 23497
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: ST FPGA MMU Development

Post by exxos »

After faffing about I get this far now "WS ?" And the bit planes are trashed... One a normal MMU it looks fine and I get "WS 4".

IMG_4894.JPG
IMG_4894.JPG (51.87 KiB) Viewed 5064 times

EDIT:

I power down the machine and rebooted, and now I get "WS 1" odd...

IMG_4895.JPG
IMG_4895.JPG (52.61 KiB) Viewed 5063 times

The third power cycle I get "WS ?" Without a phase shifting graphics..

It is hard to read the number when the bit planes are trashed, but I think it only ever goes into "WS1" or "WS ?". I don't ever remember seeing anything other than WS2 &WS4 on a real MMU... So I am wondering if something is simply "1 line out" with the video lines or something.
https://www.exxosforum.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxosforum.co.uk/atari/store2/ - All my hardware mods for sale - Please help support by making a purchase.
viewtopic.php?f=17&t=1585 Have you done the Mandatory Fixes ?
Just because a lot of people agree on something, doesn't make it a fact. ~exxos ~
People should find solutions to problems, not find problems with solutions.
Post Reply

Return to “FPGA DEVELOPMENT”