Steem SSE 3.9

A place to discuss current and future developments for STeem

Moderators: Mug UK, Steem Authors, Moderator Team

itaboy
Atari freak
Atari freak
Posts: 70
Joined: Sun May 04, 2014 6:24 pm

Re: Steem SSE 3.9

Postby itaboy » Wed Mar 01, 2017 8:05 pm

Thanks a lot!!

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Fri Mar 03, 2017 11:55 pm

thanks Steven,

Steven Seagal wrote:- Blitter:
In blit mode, the blitter can interrupt an operation between read and write.
The CPU can surrender bus control during an instruction.
Steem emulates this, but it's not 100% accurate.


this part is most interested for me. I have some CPU/Blitter interaction tests for HOG and BLIT mode. I'm curious results
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Sun Mar 05, 2017 5:22 pm

The "CPU can surrender bus control during an instruction" part seems to depend on instruction/addressing mode, which Steem doesn't test. But I'm not sure, it needs better test programs.
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Sun Mar 05, 2017 11:12 pm

I did a first test it is almost ok. That test run blitting and MULU instruction in parallel (marked red), and it looks ok. Steem shows two more black stripes than real hardware. PRG and screenshot from real hardware you can find there:
http://www.atari-forum.com/viewtopic.php?p=96197#p96197
This is the first emulator which is able to emulate CPU/BLiTTER interaction. Congrats!
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Mon Mar 06, 2017 8:04 pm

Thx, I didn't know this test, it could help.
EDIT
Found the reason for the black lines, it's because the blitter starts when timing is computed, but before the action (here changing palette 0) is completed. It's a logical error.
On a test build I could correct it, but to make it general is more involved, yet necessary...
You do not have the required permissions to view the files attached to this post.
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Mon Mar 06, 2017 11:16 pm

another tests for HOG mode. The BLiTTER copies black color to the Shifter color register 0, also the CPU changes the Shifter color register 0 every 8 cycles (white/gray).
As you can see below, on the STE every BLiTTER pass starts every 130 bus cycles (black lines starts exactly at the left edge of white/grey stripes), in Steem it is 135 bus cycles (starts at the left edge and in the middle of white/gray stripes)
BLiT_H6a.JPG


I have a few other tests, one of them shows that the CPU can easily delay the BLiTTER in HOG mode - that doesn't work in Steem
You do not have the required permissions to view the files attached to this post.
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Tue Mar 07, 2017 9:19 pm

Cyprian wrote:I have a few other tests, one of them shows that the CPU can easily delay the BLiTTER in HOG mode - that doesn't work in Steem


Yes, please post them too, I write some tests, but they tend to be rather basic and buggy :(
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Tue Mar 07, 2017 11:25 pm

How it works: in a HOG mode the BLiTTER counts every memory access used by the CPU. And after 64th it takes the control over the bus if I remember correctly for 65 bus cycles (1 cycle for bus mastering, 63 for data operations and 1 for bus mastering), later it releases the bus and again counts every memory access used by the CPU, after 64th it takes the control... and so on

Following code uses exactly 64 bus cycles, and it delays the BLiTTER pass by about 8.5 raster lines (about 4456 CPU cycles):

Code: Select all

   move.w d6,(a3)            ; red to $FFFF8240      8 CPU cycles / 2 bus cycles
   move.w d3,(a3)            ; white to $FFFF8240      8 CPU cycles / 2 bus cycles
   REPT 30
         move.l   D6,D7            4 CPU cycles / 1 bus cycle
         divs.w   D5,D7            144 CPU cycles / 1 bus cycle
   ENDR


HOG (black lines) mode delayed by DIVS.w:
BLiT_H6a4c.png
You do not have the required permissions to view the files attached to this post.
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Wed Mar 08, 2017 7:42 pm

Thx, I'll look at it.
But I guess you mean BLIT mode (hog bit=0)?
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Wed Mar 08, 2017 9:24 pm

yep, BLIT mode
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Thu Mar 09, 2017 10:51 am

Cyprian wrote:BLiT_H6a4c.png


Normally the first issue (black stripes) is fixed in the current dev build.
( viewtopic.php?f=94&t=25238&p=313391#p313391 )
About this picture (that doesn't appear...), it this a screenshot of Hatari, Steem? Is it supposed to be correct or wrong?
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Thu Mar 09, 2017 11:19 am

this is from a real hardware - 1040 STE (as previous screenshots posted here)
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Thu Mar 09, 2017 6:26 pm

Alright, I asked because it's a clean png without bending. :)
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Tue Mar 14, 2017 8:50 pm

Using your explanation (counting bus accesses, not cycles, how strange!) and bus arbitration inside instructions...

BLiT_H6a_Steem.png

Blitter starts before prefetch in instruction MOVE.

BLiT_H6a4c_Steem.png

Blitter restarts during DIV, parallel execution.

For the emulator, that means checking the blitter more often. It's a lot of work for a feature that is used only in test programs. :) All programs restart the blitter at once. But I noticed TOS 1.62 doesn't block the blitter during interrupts, so the blitter will restart on its own. Had a lot of crashes because of that.
You do not have the required permissions to view the files attached to this post.
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm

User avatar
Cyprian
Atari God
Atari God
Posts: 1292
Joined: Fri Oct 04, 2002 11:23 am
Location: Warsaw, Poland

Re: Steem SSE 3.9

Postby Cyprian » Tue Mar 14, 2017 9:00 pm

agrhh!!! thats awesome!!!
this is The First ST emulator with the CPU/BLiTTER interaction emulation!
congrats and thanks!!!

now waiting for DevBuilds :)
Jaugar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
SDrive / PAK68/3 / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
Hatari / Aranym / Steem / Saint
http://260ste.appspot.com/

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1629
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Steem SSE 3.9

Postby Steven Seagal » Tue Mar 14, 2017 9:10 pm

Your test programs help a lot, that's what I needed to improve this aspect of emulation. If you have others, please upload them.
In the CIA we learned that ST ruled
Steem SSE: http://ataristeven.exxoshost.co.uk/Steem.htm


Social Media

     

Return to “Development”

Who is online

Users browsing this forum: No registered users and 1 guest

cron