I started a new topic based on this problem...
viewtopic.php?f=6&t=45&p=31052#p30996
Where in short, the blitter in a STFM is actually running slower than in a STE.
It does seem odd that some tests like blitting,VDI graphics and GEM window still run at 100%, But other tests are as slow as 80%.
I can only think for some reason the bus grant stuff is slower than on a STE, but it does not really make sense considering the blitting test is not slowed down. But saying that, that test in particular is mostly copying blocks of RAM about, mostly the VDI tests are more accessing ROM. So there would have to be something strange where when the blitter is accessing ROM, that something like the bus grant acknowledge cycles run a cycle or two slower than they should be doing.
:shrug:
So I wonder if anyone out there with a logic analyser that can be hooked up to a STFM with blitter (or H4 remake board with blitter) and can monitor...
CLK,BR,BG,BGACK,AS,DTACK, ROM CE.
Maybe we can see something odd in the cycles between the blitting test and first test in GB6.
Slow STFM blitter oddness
-
exxos
- Site Admin

- Posts: 28365
- Joined: 16 Aug 2017 23:19
- Location: UK
Slow STFM blitter oddness
You do not have the required permissions to view the files attached to this post.
-
pixelpusher
- Posts: 144
- Joined: 27 Dec 2019 21:01
Re: Slow STFM blitter oddness
Have you looked into the software side?
- What is used in GB6' vdi scroll test (vs. an ordinary blitting operation)?
- text operations have to access the font data in the ROM. Does this slowdown also happen, if you load a TOS version into RAM?
- Is this slowdown confirmed by NVDI's GEM_TEST too?
- What is used in GB6' vdi scroll test (vs. an ordinary blitting operation)?
- text operations have to access the font data in the ROM. Does this slowdown also happen, if you load a TOS version into RAM?
- Is this slowdown confirmed by NVDI's GEM_TEST too?
-
czietz
- Posts: 586
- Joined: 14 Jan 2018 13:02
Re: Slow STFM blitter oddness
Didn't read the other thread, but did you confirm that the reference file really shows (close to) 100% on everything on a stock STE with (unpatched) TOS 2.06?
-
exxos
- Site Admin

- Posts: 28365
- Joined: 16 Aug 2017 23:19
- Location: UK
Re: Slow STFM blitter oddness
Yep, tried it on 2 STEs. Icky suggested trying a internal and eternal blitter STE, just to be sure, and everything was 100% exactly.czietz wrote: 31 Dec 2019 17:53 Didn't read the other thread, but did you confirm that the reference file really shows (close to) 100% on everything on a stock STE with (unpatched) TOS 2.06?
Would help if someone could confirm these odd results just the same though.
-
czietz
- Posts: 586
- Joined: 14 Jan 2018 13:02
Re: Slow STFM blitter oddness
I have two STfs with Blitter; but I can only run test on them next weekend.
-
exxos
- Site Admin

- Posts: 28365
- Joined: 16 Aug 2017 23:19
- Location: UK
Re: Slow STFM blitter oddness
This is all controlled by TOS, nothing changes in GB6.pixelpusher wrote: 31 Dec 2019 17:28 - What is used in GB6' vdi scroll test (vs. an ordinary blitting operation)?
A good thought, unfortunately I have never been able to get TOS in RAM working :(pixelpusher wrote: 31 Dec 2019 17:28 - text operations have to access the font data in the ROM. Does this slowdown also happen, if you load a TOS version into RAM?
There would be tricky as I am not really familiar with those results or exactly what it does or does not use the blitter for.
-
PaulJ
- Posts: 1568
- Joined: 08 Apr 2018 01:14
- Location: USA
Re: Slow STFM blitter oddness
Lot closer on the H4.
You do not have the required permissions to view the files attached to this post.
-
exxos
- Site Admin

- Posts: 28365
- Joined: 16 Aug 2017 23:19
- Location: UK
Re: Slow STFM blitter oddness
Interesting.. Those 99%'s may just be down to clock variations..
So we really need someone to try a STFM with blitter really now..
-
pixelpusher
- Posts: 144
- Joined: 27 Dec 2019 21:01
Re: Slow STFM blitter oddness
There is a raster copy function in the VDI (which directly utilizes the blitter, if enabled) and an "expansion" (of monochrome) raster function in the VDI, but no "vdi scrolling function" - hence my question what vdi calls GB6 uses in the blitting and vdi scroll test.
GEM_TEST (2) allows you to you to enable/disable the blitter for each test (although the blitter only influences output tests of course).
GEM_TEST (2) allows you to you to enable/disable the blitter for each test (although the blitter only influences output tests of course).
-
exxos
- Site Admin

- Posts: 28365
- Joined: 16 Aug 2017 23:19
- Location: UK
Re: Slow STFM blitter oddness
But if if this was a TOS issue, surely it would be the same issue on the STE as well using TOS206 ?pixelpusher wrote: 31 Dec 2019 18:46 There is a raster copy function in the VDI (which directly utilizes the blitter, if enabled) and an "expansion" (of monochrome) raster function in the VDI, but no "vdi scrolling function" - hence my question what vdi calls GB6 uses in the blitting and vdi scroll test.
GEM_TEST (2) allows you to you to enable/disable the blitter for each test (although the blitter only influences output tests of course).
TEST 1
Code: Select all
DEF TEST1&
'shared tree&
STATIC t&,x,y,w,h,i,obadr&
x=0
junk=rsrc_gaddr(0,form1,tree&)
obadr& = tree&+ (form1*24)
form_center tree&,x,y,w,h
'attempt to sync timerC
SHARED testcode&,sys_tstart,sys_sleep,sys_wake,sys_tstop,sys_acia_off,sys_acia_on,sys_acia_reset
t&=1234567890 ' store some dummy number to write to in ASM code later
call loc testcode&,sys_sleep' ok
call loc testcode&,sys_acia_off ' crash 16mhz tests
call loc testcode&,sys_tstart ' stores start time internally
FOR i=0 TO 19
form_dial FMD_START,0,0,0,0,x,y,w,h
form_dial FMD_GROW,x+w\2,y+h\2,0,0,x,y,w,h
'form_center tree&,x,y,w,h
junk=objc_draw(tree&,form1,10,x,y,w,h)
form_dial FMD_SHRINK,x+w\2,y+h\2,0,0,x,y,w,h
form_dial FMD_FINISH,0,0,0,0,x-20,y,w+20,h
x=x+2
POKEW obadr&+16,x
NEXT i
call loc testcode&,sys_tstop,varptr(t&) ' get test time from ASM code
TEST1&= t&*5 ' returns test time from function
call loc testcode&,sys_wake
call loc testcode&,sys_acia_on
form_dial FMD_FINISH,0,0,0,0,x-20,y,w+20,h
END DEFBLITTING test.
Code: Select all
DEF TEST11&
'setup XY locations
SHARED mfdb&,scr&,menuy,XY(),menuy,WYS
STATIC x,y,a,mywind_id,w1,h1,t&
mywind_id=freewind
w1=639:h1=199-menuy
WINDOW OPEN mywind_id,"Blitting",0,menuy,w1,h1,&hfef
'draw test box
vsf_interior 2
vsf_color 1
'this -2's cheat so we copy the white border around the box
'this is a poormans "clear background" as the copy happens
v_bar 10+2,WYS+2,210-2,WYS+50-2
xy(0)=10:xy(1)=WYS:xy(2)=210:xy(3)=WYS+50 'S
'attempt to sync timerC
SHARED testcode&,sys_tstart,sys_sleep,sys_wake,sys_tstop,sys_acia_off,sys_acia_on,sys_acia_reset
call loc testcode&,sys_sleep : call loc testcode&,sys_acia_off
call loc testcode&,sys_tstart
t&=1234567890 ' store some dummy number to write to in ASM code later
for A=0 to 2 'number of left right loops
FOR X=0 to 400 step 2
xy(4)=10+x:xy(5)=120-y:xy(6)=210+x:xy(7)=xy(5)+xy(3)
vro_cpyfm 3,xy(),mfdb&,scr&
y=(x+1)/6
NEXT X
FOR X=400 to 0 step -2
xy(4)=10+x:xy(5)=120-y:xy(6)=210+x:xy(7)=xy(5)+xy(3)
vro_cpyfm 3,xy(),mfdb&,scr&
y=(x+1)/6
NEXT X
NEXT A
call loc testcode&,sys_tstop,varptr(t&) ' get test time from ASM code
TEST11&= t&*5 ' returns test time from function
call loc testcode&,sys_wake : call loc testcode&,sys_acia_on
vsf_color 1
WINDOW CLOSE mywind_id
END DEF
Who is online
Users browsing this forum: ClaudeBot and 12 guests