exxos blog - random goings on

Blogs & guides and tales of woo by forum members.
User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Mon Jul 01, 2019 1:32 pm

Just about figured out some firmware for the flash circuit. I'm going to have a jumper which will disable the flash decoding and enable writing to the flash. This means the motherboard ROM's will be used to boot from, which will allow the flash to be programmed in TOS206 space.

While technically one flash bank can run TOS and another flash bank to program, this isn't a good option as the flash is naturally blank when its new. So booting from the MB ROM's means people can boot up as normal and program whatever the hell they like into the flash banks. Then switch the jumper back to enable flash booting, which will disable the MB ROM's and boot from the flash. It then acts like dualtos boards where moving a jumper selects the bank.

Next... back to hisoft basic to start on the software side of things.. oh the fun...
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Mon Jul 01, 2019 5:35 pm

The flash firmware isn't going well. For some bizarre reason, when I wire the flash enable to TOS206 space, the ST doesn't boot up at all. If I tie it to RESET so it keeps the flash enable high, it boots fine.. TOS206 space.. nope..

I know the code for TOS decoding is right as I use it on all my boosters.. So after 4 hours, I have no idea whats going on :( Flash enable is always high on the board, the same as when its connected to RESET.. so shouldn't be any difference.

I did wonder if there was a bad address line causing the flash to enable wrongly, but I never see enable go low on scope.. and the RTC address decodes fine.. so don't think it can be that..

:shrug: :shrug: :shrug: :shrug:
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Mon Jul 01, 2019 7:05 pm

I figured it out.. this is stupid...

If I do this..

Where ADDR goes HI on TOS206 space, so inverted means OE goes low... OR CPU_AS is high then OE is high.. it doesn't work....

Code: Select all

FLASH_OE=  !ADDR:[E00000..EFFFFF] # CPU_AS;

This DOES work...

Code: Select all

PINNODE = TMP;
TMP =  ADDR:[E00000..EFFFFF];
FLASH_OE = !TMP # CPU_AS;
Only difference is I dump ADDR into another variable first...

So I am going to make a assumption at this point that the compiler screws up (without warning) , again assuming there is to many product terms for that IO pin (will try and check later on the datasheet).
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Mon Jul 01, 2019 7:23 pm

Finally got a dump of the flash .. of course all 1's as its erased by default..

IMG_4429.JPG
IMG_4429.JPG (58.71 KiB) Viewed 601 times
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Mon Jul 01, 2019 9:03 pm

Been trying to read the Flash ID with no luck...

datasheet says...

1.jpg
1.jpg (59.98 KiB) Viewed 594 times

So I do..

Code: Select all

POKEW (&HE05554),&HAAAA
POKEW (&HE02AAA),&H5555
POKEW (&HE05554),&H9090
I can't read 5555 because I get address error. So have to use 5554 instead. I also put the data twice as I have 2 ROM's on the bus.

Then to read..

Code: Select all

PRINT HEX$(PEEKW(&HE00000))
So according to...
2.jpg
2.jpg (30.61 KiB) Viewed 594 times
I should get back "BF" in at least one side of the databus, but I just get back all 1's :cry:

I poke the values (write) to the bus as my PLD logic will drive #WE low during those accesses. So its the same as the timing diagram.

The only difference is I keep CE low all the time... BUT..

3.jpg
3.jpg (43.54 KiB) Viewed 594 times

.. It seems it shouldn't actually matter anyway as #WE will go high at the end of the bus cycle anyway. So data should be latched.

The only other issue might be I drive OE low on a flash address.. when during command writes its actually high.. So could be a conflict.. So will look into that next...

EDIT:
Nope, still the same :roll:

:shrug: :shrug: :shrug:
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

keli
Posts: 75
Joined: Tue Aug 22, 2017 1:34 pm

Re: exxos blog - random goings on

Post by keli » Tue Jul 02, 2019 3:09 pm

exxos wrote:
Mon Jul 01, 2019 9:03 pm

Code: Select all

POKEW (&HE05554),&HAAAA
POKEW (&HE02AAA),&H5555
POKEW (&HE05554),&H9090
I can't read 5555 because I get address error. So have to use 5554 instead.
Wouldn't you have to shift the addresses one bit to the left? I'm assuming you have connected the 68k A1 to the A0 line and are not decoding the LSB/USB to generate byte level access?

Code: Select all

POKEW (&HE0AAAA),&HAAAA
POKEW (&HE05554),&H5555
POKEW (&HE0AAAA),&H9090
Edit: corrected my math

User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Wed Jul 03, 2019 10:35 am

Hmm.. Interesting.. I'm not using LDS,UDS no. Will give it a try when I get home.
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

keli
Posts: 75
Joined: Tue Aug 22, 2017 1:34 pm

Re: exxos blog - random goings on

Post by keli » Wed Jul 03, 2019 6:17 pm

exxos wrote:
Wed Jul 03, 2019 10:35 am
Hmm.. Interesting.. I'm not using LDS,UDS no. Will give it a try when I get home.
Yeah your comment on having two roms on the bus gave me the hint. Since you have interleaved bytes from each one, you'll have to double up the addresses. E00000 is byte 0 on the first rom, E00001, byte 0 on the second rom, E00002 maps to address 1 on the first rom, E00003 is byte 1 on the second, etc. etc....

User avatar
exxos
Site Admin
Site Admin
Posts: 7873
Joined: Wed Aug 16, 2017 11:19 pm
Location: UK
Contact:

Re: exxos blog - random goings on

Post by exxos » Wed Jul 03, 2019 6:37 pm

keli wrote:
Wed Jul 03, 2019 6:17 pm
Yeah your comment on having two roms on the bus gave me the hint. Since you have interleaved bytes from each one, you'll have to double up the addresses. E00000 is byte 0 on the first rom, E00001, byte 0 on the second rom, E00002 maps to address 1 on the first rom, E00003 is byte 1 on the second, etc. etc....
Yeah I can understand that.. Though high and low byte order, I don't see how it would double the address ? I could ready E00000 and then E00001 on byte access, but I just read E00000 in 16bit and read the lot, so both addresses are accessed at once.. The address number doesn't change..
4MB STFM 1.44 FD- VELOCE+ 020 STE - 4MB STE 32MHz - STFM 16MHz - STM - MEGA ST - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - HxC - CosmosEx - Ultrasatan - various clutter

https://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
https://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.

keli
Posts: 75
Joined: Tue Aug 22, 2017 1:34 pm

Re: exxos blog - random goings on

Post by keli » Wed Jul 03, 2019 7:14 pm

exxos wrote:
Wed Jul 03, 2019 6:37 pm

Yeah I can understand that.. Though high and low byte order, I don't see how it would double the address ? I could ready E00000 and then E00001 on byte access, but I just read E00000 in 16bit and read the lot, so both addresses are accessed at once.. The address number doesn't change..
Edit Even though you're accessing both bytes at once, the second byte still has its own address.

That's because you are doing a 16bit access. POKEW writes two bytes to memory - the higher half of the value at the given address and the lower at address+1. The 68000 can only do that at word boundaries, that's why you get an address error when writing a word to an odd address. In other words: memory on the 68000 is byte addressable, but accessed on the bus in 16 bit words (using UBS and LBS to mask off the unwanted half for byte accesses).

Post Reply

Return to “MEMBER BLOGS”