Suska board

General discussions or ideas about hardware.
User avatar
Darklord
Site sponsor
Site sponsor
Posts: 1600
Joined: 20 Sep 2017 13:41
Location: Prestonsburg

Re: Suska board

Post by Darklord »

The STorm-ST boards need TOS v2.06, EmuTOS or MagiC to work, adding 8 additional megs of ST RAM:

https://wiki.newtosworld.de/index.php?title=Storm_ST
Welcome To DarkForce! www.darkforce.org "The Fuji Lives.!"
Atari SW/HW based BBS-Telnet:darkforce-bbs.dyndns.org 1040
User avatar
Cyprian
Posts: 542
Joined: 22 Dec 2017 09:16
Location: Warszawa, Poland

Re: Suska board

Post by Cyprian »

exxos wrote: 19 May 2024 21:51
Cyprian wrote: 19 May 2024 21:26 There is 'Maddalt' function: https://freemint.github.io/tos.hyp/en/g ... ml#Maddalt
" »Inform GEMDOS of alternative memory« - Register 'Alternative' RAM with GEMDOS. "
It is used to add more than 4 RAM to the TOS memory pool and it was implemented in GEMDOS 0.19 (TOS 2.x)
Yes indeed, but normally that is alt-ram whch is bolted onto the 68000 and needs PRG flags set. But what I am talking about is, pure ST RAM. In that would TOS itself see more than 4MB if it was installed..

Thinking about it, you normally have to boot the system without alt-ram enabled because TOS would try and allocate video RAM in alt-ram which results in a black screen. So then Maddalt is used to allocate the RAM and the shifter still gets limited to 4MB. It is a bit messy.. But this to me basically insinuates that TOS does actually check for more than 4MB STRAM.
If I remember correctly even TOS 1.x supports more than 4MB RAM. It checks available ST-RAM also above 4MB. Therefore if you have ALT-RAM that starts just above ST-RAM ( $400000 ) needs to be disconnected during memory check.
ATW800/2 / V4sa / Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org
User avatar
exxos
Site Admin
Site Admin
Posts: 28361
Joined: 16 Aug 2017 23:19
Location: UK

Re: Suska board

Post by exxos »

Darklord wrote: 19 May 2024 22:32 The STorm-ST boards need TOS v2.06, EmuTOS or MagiC to work, adding 8 additional megs of ST RAM:
It's not ST ram... its alt-ram. over 4MB ST RAM isn't possible due to hardware limits. Only the Falcon that I know of has true 14 MB STRAM.
User avatar
exxos
Site Admin
Site Admin
Posts: 28361
Joined: 16 Aug 2017 23:19
Location: UK

Re: Suska board

Post by exxos »

Cyprian wrote: 19 May 2024 22:34 If I remember correctly even TOS 1.x supports more than 4MB RAM. It checks available ST-RAM also above 4MB.
Yes that is what I also believe. And what I am asking.
Therefore if you have ALT-RAM that starts just above ST-RAM ( $400000 ) needs to be disconnected during memory check.
Yes that's precisely the problem I ran into that if you do not do this, the video RAM tries to be allocated in alt-ram which he does not have access to.

Mostly I'm trying to find out what version of TOS supports more than 4MB STRAM. Though I think even TOS104 must support it.
User avatar
Darklord
Site sponsor
Site sponsor
Posts: 1600
Joined: 20 Sep 2017 13:41
Location: Prestonsburg

Re: Suska board

Post by Darklord »

exxos wrote: 19 May 2024 22:35 It's not ST ram... its alt-ram. over 4MB ST RAM isn't possible due to hardware limits. Only the Falcon that I know of has true 14 MB STRAM.
Ah, saw that (now). Thanks for the correction.
Welcome To DarkForce! www.darkforce.org "The Fuji Lives.!"
Atari SW/HW based BBS-Telnet:darkforce-bbs.dyndns.org 1040
User avatar
Cyprian
Posts: 542
Joined: 22 Dec 2017 09:16
Location: Warszawa, Poland

Re: Suska board

Post by Cyprian »

exxos wrote: 19 May 2024 22:37 Mostly I'm trying to find out what version of TOS supports more than 4MB STRAM. Though I think even TOS104 must support it.
do you plan to extend ST-RAM size beyond 4MB?
ATW800/2 / V4sa / Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org
User avatar
exxos
Site Admin
Site Admin
Posts: 28361
Joined: 16 Aug 2017 23:19
Location: UK

Re: Suska board

Post by exxos »

Cyprian wrote: 19 May 2024 23:16 do you plan to extend ST-RAM size beyond 4MB?
Yes.
User avatar
Cyprian
Posts: 542
Joined: 22 Dec 2017 09:16
Location: Warszawa, Poland

Re: Suska board

Post by Cyprian »

exxos wrote: 19 May 2024 23:25
Cyprian wrote: 19 May 2024 23:16 do you plan to extend ST-RAM size beyond 4MB?
Yes.
nice
MMU and SHIFTER in FPGA?
ATW800/2 / V4sa / Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org
User avatar
exxos
Site Admin
Site Admin
Posts: 28361
Joined: 16 Aug 2017 23:19
Location: UK

Re: Suska board

Post by exxos »

Cyprian wrote: 20 May 2024 01:05 As
MMU and SHIFTER in FPGA?
It's already been done.
viewtopic.php?p=77579#p77579
viewtopic.php?p=33827#p33827
User avatar
exxos
Site Admin
Site Admin
Posts: 28361
Joined: 16 Aug 2017 23:19
Location: UK

Re: Suska board

Post by exxos »

This looks like the memory test loop, but it seems to default to 4MB. It would imply to me that is that is all it tests to, though I don't understand assembly well enough to really figure out what this loop is doing.

Code: Select all

#if (TOSVERSION < 0x300) | TP_50
/* First we try to configure the memory controller */

            clr.w     d6
            move.b    #$a,(memconf).w			/* default: setup controller for 2Mb/2Mb */

            movea.w   #$8,a0
            lea       $200008,a1				/* + 2Mb */
            clr.w     d0
chkpatloop: move.w    d0,(a0)+					/* fill 512-8 bytes with a test pattern */
            move.w    d0,(a1)+
            add.w     #$fa54,d0
            cmpa.w    #$200,a0
            bne.s     chkpatloop

            move.b    #90,(v_bas_l).w			/* wrote low byte of video address */
            tst.b     (v_bas_m).w				/* touch the middle byte (this should reset the low byte) */
            move.b    (v_bas_l).w,d0
            cmp.b     #90,d0					/* low byte not reset? */
            bne.s     chkmem1
            clr.b     (v_bas_l).w				/* try a different low byte value */
            tst.w     (palette).w				/* touch the color palette */
            tst.b     (v_bas_l).w				/* low byte changed? */
            bne.s     chkmem1
            move.l    #$40000,d7				/* 256Kb offset */
            bra.s     chkmem1b
chkmem1:    move.l    #$200,d7					/* 512 byte offset */
chkmem1b:   move.l    #$200000,d1				/* 2Mb = maximum size per bank */

chkmemloop: lsr.w     #2,d6						/* shift memory configuration down by a bank (bank 1 is in bits 0..1, bank 0 is in bits 2..3) */

            movea.l   d7,a0						/* + 512/256Kb bytes */
            addq.l    #8,a0
            lea       chkmem3(pc),a4
            bra       memchk0
chkmem3:    beq.s     chkmem7					/* bank is not working => */

            movea.l   d7,a0
            adda.l    d7,a0						/* + 1024/512Kb byte */
            addq.l    #8,a0
            lea       chkmem4(pc),a4
            bra       memchk0
chkmem4:    beq.s     chkmem6					/* bank has 512Kb of memory => */

            movea.w   #8,a0						/* + 0 bytes */
            lea       chkmem5(pc),a4
            bra       memchk0
chkmem5:    bne.s     chkmem7					/* bank is empty => */

            addq.w    #4,d6						/* 4+4 = 1000 2Mb bank size */
chkmem6:    addq.w    #4,d6						/* 4   = 0100 512Kb bank size */
chkmem7:    sub.l     #$200000,d1				/* - 2Mb */
            beq.s     chkmemloop
            move.b    d6,(memconf).w			/* set memory configuration */

#else
domemchk:

Return to “HARDWARE DISCUSSIONS”

Who is online

Users browsing this forum: ClaudeBot, don_apple, Hellraiseruk, MegaSTEarian and 8 guests