English Amiga Board


Go Back   English Amiga Board > Coders > Coders. System

 
 
Thread Tools
Old 29 June 2013, 23:12   #1
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
Lightbulb A2091ToFast: Even more A2091/A590 speedup possible!

A2091ToFast V2.5
Original code by Chris Weber 1998 (Aminet). Updated and enhanced by
SpeedGeek 2015.

INTRODUCTION:
A2091ToFast copies the A2091/A590 ROM code into Fast memory similar
to the CPU FastROM command but does not require an MMU. This allows
it to work with many other CPUs which don't have an MMU or free the MMU
to perform other tasks. More importantly, it can speed up the execution of the SCSI driver code by SEVERAL HUNDRED percent!

Note: Zorro2 Fast memory and Zorro2 ROMs operate at the same bus speed so there is no benefit to using A2091ToFast on a "Bog Standard" 7 MHz 68000. However, unlike the Zorro2 ROMs the Zorro2 Fast memory can be cached so the L2 cache on some 68000 accelerators (or the L1 cache on 68020+ accelerators) may still realize some benefit.

I've uploaded RSCP images showing PIO speed on my system is now a little faster than original DMA speed (and much faster than ROM based PIO speed). Enjoy!
Attached Thumbnails
Click image for larger version

Name:	A2091ROM_PIO.PNG
Views:	449
Size:	9.3 KB
ID:	39601   Click image for larger version

Name:	A2091TOFAST_PIO.PNG
Views:	409
Size:	9.1 KB
ID:	39603  
Attached Files
File Type: lha A2091TOFAST25.LHA (2.7 KB, 146 views)

Last edited by SpeedGeek; 24 July 2015 at 14:45.
SpeedGeek is offline  
Old 02 April 2014, 06:24   #2
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
** NEWS UPDATE **

V2.1 released - even more improvements!
- Added code to scan ROMs for driver size
- Removed Debug symbols to make smaller executable
- Added version string
- Error messages updated
SpeedGeek is offline  
Old 03 June 2014, 17:07   #3
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
** 2ND NEWS UPDATE **

V2.2 released - new feature speeds up direct calls to scsi.device!
- Added code to patch scsi.device resident structure vectors
to FastMem image
- Fixed size calculation of ROM driver size scan
- Removed 2 lines of redundant code
SpeedGeek is offline  
Old 03 June 2014, 20:01   #4
JanciB
Registered User
JanciB's Avatar
 
Join Date: May 2013
Location: Bratislava / Slovakia
Posts: 219
Thanx. I have this in my startup-sequence:

C:A2091ToFast >NIL:
C:Run >NIL: C:vb2091SAS DEVICE scsi.device UNIT 0 BROKEN

With your v2.1 everything is ok.
With your v2.2 when i run vb2091SAS util i get recoverable alert (Error: 0100 0003, Task: 080748B0). After pressing left mouse button everything seems to be ok.

J.
JanciB is offline  
Old 04 June 2014, 02:06   #5
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
Quote:
Originally Posted by JanciB View Post
Thanx. I have this in my startup-sequence:

C:A2091ToFast >NIL:
C:Run >NIL: C:vb2091SAS DEVICE scsi.device UNIT 0 BROKEN

With your v2.1 everything is ok.
With your v2.2 when i run vb2091SAS util i get recoverable alert (Error: 0100 0003, Task: 080748B0). After pressing left mouse button everything seems to be ok.

J.
This is my startup-sequence:

C:2632 -r
Run >NIL: C:Vbak2091 DEVICE scsi.device UNIT 1 BUFSIZE 512 SINGLE
C:SetPatch QUIET NOROMUPDATE
C:A2091ToFast >NIL:

Vbak2091 needs to be run before A2091ToFast. Also, if you want to NSDpatch scsi.device then Vbak2091 needs to be run before Setpatch for OS3.5+.

Of course, you can always use v2.1 if you like.

Last edited by SpeedGeek; 04 June 2014 at 02:33.
SpeedGeek is offline  
Old 04 June 2014, 14:07   #6
JanciB
Registered User
JanciB's Avatar
 
Join Date: May 2013
Location: Bratislava / Slovakia
Posts: 219
vbak opens scsi.device so i thought that it should open it after a2091tofast patches it. I'll try your sequence.

2632 is for DKB 2632 card? I have csa derringer 030. It uses D3 command.
I have it before vbak and a2091tofast like you.

Thanx

J.

Quote:
Originally Posted by SpeedGeek View Post
This is my startup-sequence:

C:2632 -r
Run >NIL: C:Vbak2091 DEVICE scsi.device UNIT 1 BUFSIZE 512 SINGLE
C:SetPatch QUIET NOROMUPDATE
C:A2091ToFast >NIL:

Vbak2091 needs to be run before A2091ToFast. Also, if you want to NSDpatch scsi.device then Vbak2091 needs to be run before Setpatch for OS3.5+.

Of course, you can always use v2.1 if you like.
JanciB is offline  
Old 04 June 2014, 15:45   #7
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
** 3RD NEWS UPDATE **

V2.3 released - minor update
- Added code for 2nd.scsi.device resident structure patching
since V2.2 was useless to A4000 owners

Last edited by SpeedGeek; 04 June 2014 at 15:58.
SpeedGeek is offline  
Old 11 May 2015, 14:53   #8
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
** 4TH NEWS UPDATE **

V2.4 released - A2091ToFast can now be installed before other programs which patch scsi.device
- Added code to update checksum after resident structure patching
- Added code to patch SCSI interrupt vector to FastMem image
- Replaced Disable() - Enable() pairs with Forbid() - Permit() pairs
- Some more code optimizations done

Update:
*V2.4 can now be installed before other programs which patch
scsi.device. This means vbak2091 can benefit from patching it's code to
the FastMem image. It also means OS3.5+ users who NSDpatch
scsi.device will need to run vbak2091 before Setpatch. So A2091ToFast
will need to be installed before Setpatch with the above configuration.
SpeedGeek is offline  
Old 24 July 2015, 14:47   #9
SpeedGeek
Moderator
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 57
Posts: 568
** 5TH NEWS UPDATE **

V2.5 released - Added support for C= V8.0 (40.20) ROMs
- Added new code to support both V7.0 and V8.0 ROM stack offsets
- Removed all task busy error handling code which really wasn't needed
- Reduced executable size with more PC relative code
SpeedGeek is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
A590/A2091 reset/reboot loop mark_k support.WinUAE 13 03 July 2014 12:02
A2091/A590 V7.0 BindDrivers update SpeedGeek Coders. System 1 28 February 2014 22:46
A590/A2091 boot crash mark_k support.WinUAE 5 15 February 2014 12:39
A2091 A590 Memory Modules kire_online support.Hardware 3 03 December 2011 21:36
A590 / A2091 interchangeable chips ? zaqwsx support.Hardware 2 22 July 2003 23:51

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 11:22.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.
Page generated in 0.07324 seconds with 14 queries