Jump to content

Photo

Horizon RAMdisk ROS and CFG

ROS CFG RAMDISK

202 replies to this topic

#1 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • 1,484 posts

Posted Sun Mar 2, 2014 2:41 PM

Instead of cluttering up another thread :)  here's one for RAMDisk related info.

 

Last night I was experiencing file corruption when saving Extended BASIC files to my Horizon RAMdisk.  The filename was getting copied into the file I was saving, trashing code at seemingly random spots.

 

As I was putting together an email to Gazoo, it dawned on me that I had removed my Myarc floppy controller from the system.  Without the FDC, the VDP memory pointer at 0x8370 was not modified, because there was no need for any floppy buffers.

 

Well... ROS uses the 0x8370 pointer to determine where to copy its last used filename and corresponding drive number into VDP memory.  ( I believe this is primarily for boot tracking purposes but may also be for convenience).   Without a floppy controller in the system, we had extra VDP RAM up to 0x3fff available for system use.  ROS was dumping the filename directly into VDP where my program was located!

 

The "corruption" is not limited to XB since the ROS routine is executed for all file IO.  Had I not been testing file transfers between systems, requiring me to inspect the files for changes, I might have missed out on finding this dependency.

 

Therefore, for anyone out there using a RAMdisk, it is good practice to keep a floppy controller in the system :)   I do not know if the Myarc hard/floppy controller sets VDP similar to the floppy controllers, that is a test for another day.

 

 

 



#2 Gazoo OFFLINE  

Gazoo

    Stargunner

  • 1,507 posts
  • Location:Downingtown, PA

Posted Sun Mar 2, 2014 3:22 PM

Instead of cluttering up another thread :)  here's one for RAMDisk related info.

 

Last night I was experiencing file corruption when saving Extended BASIC files to my Horizon RAMdisk.  The filename was getting copied into the file I was saving, trashing code at seemingly random spots.

 

As I was putting together an email to Gazoo, it dawned on me that I had removed my Myarc floppy controller from the system.  Without the FDC, the VDP memory pointer at 0x8370 was not modified, because there was no need for any floppy buffers.

 

Well... ROS uses the 0x8370 pointer to determine where to copy its last used filename and corresponding drive number into VDP memory.  ( I believe this is primarily for boot tracking purposes but may also be for convenience).   Without a floppy controller in the system, we had extra VDP RAM up to 0x3fff available for system use.  ROS was dumping the filename directly into VDP where my program was located!

 

The "corruption" is not limited to XB since the ROS routine is executed for all file IO.  Had I not been testing file transfers between systems, requiring me to inspect the files for changes, I might have missed out on finding this dependency.

 

Therefore, for anyone out there using a RAMdisk, it is good practice to keep a floppy controller in the system :)   I do not know if the Myarc hard/floppy controller sets VDP similar to the floppy controllers, that is a test for another day.

 

 

 

 

Email has been answered. :) Part of the answer is copied below.

 

There is a version of ROS that works without a floppy controller. Look through Micropendium for the
article where the guy made a portable TI than ran off a 12v battery. He built a ramdisk along with 32k
into it and ran an 8 bank supercart with it. I don't have the article in front of me, but I think Barry Boone
modified ROS for him so it would work without a floppy controller. Maybe Barry will remember doing this.

If it was Barry, we know where to find him, if it wasn't, I'm sorry for remembering the wrong person.

 

Gazoo



#3 Gazoo OFFLINE  

Gazoo

    Stargunner

  • 1,507 posts
  • Location:Downingtown, PA

Posted Sun Mar 2, 2014 3:35 PM

It was Barry. I just looked at the articles. June, July, and August 1989. Fun and informative reading again!

 

(edit) Oh, and the HFDC works fine with a Ramdisk. Use the Myarc version of the ROS.

 

 

Gazoo


Edited by Gazoo, Sun Mar 2, 2014 3:58 PM.


#4 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Sun Mar 2, 2014 4:11 PM

It was Barry. I just looked at the articles. June, July, and August 1989. Fun and informative reading again!

 

(edit) Oh, and the HFDC works fine with a Ramdisk. Use the Myarc version of the ROS.

 

 

Gazoo

I just read the three articles - definitely a fun trip down memory lane.  And the diagnosis from Lou was spot on  ;)    Nice find, sir!



#5 Gary from OPA OFFLINE  

Gary from OPA

    Moonsweeper

  • 414 posts
  • Location:The World Wide Web

Posted Sun Mar 2, 2014 4:28 PM

Just one of minor bugs in 8.14F with its messy usage of management of resources available, it was designed thinking there was a another drive controller in the box.

 

I corrected this bug in ROS9, and if Tim is kind enough to past me on his 8.32 source, I can quickly help fix this error up along with other improvements in the future.



#6 Gazoo OFFLINE  

Gazoo

    Stargunner

  • 1,507 posts
  • Location:Downingtown, PA

Posted Sun Mar 2, 2014 4:41 PM

I just read the three articles - definitely a fun trip down memory lane.  And the diagnosis from Lou was spot on  ;)    Nice find, sir!

 

I've got the memory of an elephant, and a nose to match. ;)

 

G



#7 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Sun Mar 2, 2014 5:11 PM

Just one of minor bugs in 8.14F with its messy usage of management of resources available, it was designed thinking there was a another drive controller in the box.

 

I corrected this bug in ROS9, and if Tim is kind enough to past me on his 8.32 source, I can quickly help fix this error up along with other improvements in the future.

 

Pulling together the source is on my list.  When I last moved, things got a bit jumbled.  I'm still recovering from that... I kept records of my ROS/CFG comparisons as well.  It will just take me some time...



#8 Gary from OPA OFFLINE  

Gary from OPA

    Moonsweeper

  • 414 posts
  • Location:The World Wide Web

Posted Sun Mar 2, 2014 5:44 PM

 

Pulling together the source is on my list.  When I last moved, things got a bit jumbled.  I'm still recovering from that... I kept records of my ROS/CFG comparisons as well.  It will just take me some time...

Yep, I can understand, I still messed up with my move from Canada to this tropical island, and that was almost 5 years ago, with before that 8 month planning trip and 2 year gap afterwards, so really messed up.

 

I still have whole cargo shipload I need moved from Canada to here once I can afford the transport, as I spending over $100 a month keeping lot of stuff in Canada in cold storage, so I am finding myself missing key pieces I need here, and should have packed in many planeloads down here instead, you never really know what you need or use until you don't have it handy in front of you, you take it for grant as it was always there incase you needed it.

 

Anyhow getting off-topic here.



#9 atrax27407 OFFLINE  

atrax27407

    Dragonstomper

  • 635 posts

Posted Tue Mar 4, 2014 9:43 AM

My HFDC suddenly went "flaky" and, not having the time or interest to troubleshoot it, I replaced it with a 1 Meg Horizon. F'WEB will not access alpha drives and I have been using DSK9 as my workspace. I used CFG832 to initialize the 1 Meg into a large 3200 sector disk and an 888 sector disk. I renamed the old DSK9 to DSKG and the 3200 sector drive became DSK9 (workspace). Neither the HRD16 nor the Horizon seemed to mind the change. Except for the minor computation error by CFG832 in the number of free sectors (it shows the true number with DISK UTILITIES and other managers), everything worked flawlessly.



#10 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Tue Mar 4, 2014 11:59 AM

My HFDC suddenly went "flaky" and, not having the time or interest to troubleshoot it, I replaced it with a 1 Meg Horizon. F'WEB will not access alpha drives and I have been using DSK9 as my workspace. I used CFG832 to initialize the 1 Meg into a large 3200 sector disk and an 888 sector disk. I renamed the old DSK9 to DSKG and the 3200 sector drive became DSK9 (workspace). Neither the HRD16 nor the Horizon seemed to mind the change. Except for the minor computation error by CFG832 in the number of free sectors (it shows the true number with DISK UTILITIES and other managers), everything worked flawlessly.

 

Something to keep in mind is that DSKU copies each file's FDR twice to preserve the comments field.  If I recall correctly, this has the side effect of preserving the Myarc backup bit that would otherwise be stripped by ROS832. I'll hunt around for that info when I have time.  Until then, you may still need BITREMOVER in your arsenal.



#11 atrax27407 OFFLINE  

atrax27407

    Dragonstomper

  • 635 posts

Posted Tue Mar 4, 2014 12:07 PM

I already have it in my arsenal. I don't have any Myarc Cards in my system so that shoudn't be a problem.



#12 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Tue Mar 4, 2014 7:22 PM

I already have it in my arsenal. I don't have any Myarc Cards in my system so that shoudn't be a problem.

 

Alas, files transferred by many terminal emulators will retain these bits from Myarc systems.  I seem to recall suggesting that Fred mask these bits in DM2K and TIDIR and his DSRs, though I don't know if he did.  I do not recall if Michael's utility masks the bits, I suppose he can chime in if he reads this message.  :)

 

Many years ago I made it a point to mask the backup bit during level 2 file copying or modem transfers. 



#13 atrax27407 OFFLINE  

atrax27407

    Dragonstomper

  • 635 posts

Posted Fri Mar 7, 2014 5:52 AM

I have done a bit of experimenting with CFG/ROS832. I found out that it is very particular about which disk manager you use with it. Or, rather, some disk managers just can't deal with a 3200-sector RAMdisk. Even though 3200 sectors is beyond quad density (2880 sectors), DISKREVIEW from the F'WEB package handles it quite nicely and all functions are completely supported. The same is true with DISK UTILITIES -  at least in Vn 4.12.

DM2K Vn 2.5 is another matter entirely. Cataloging a 3200 sector disk gives you all sorts of strange results. I didn't want to press my luck and see if the functions worked.



#14 mizapf OFFLINE  

mizapf

    River Patroller

  • 2,194 posts
  • Location:Germany

Posted Fri Mar 7, 2014 9:11 AM

Alas, files transferred by many terminal emulators will retain these bits from Myarc systems.  I seem to recall suggesting that Fred mask these bits in DM2K and TIDIR and his DSRs, though I don't know if he did.  I do not recall if Michael's utility masks the bits, I suppose he can chime in if he reads this message.  :)
 
Many years ago I made it a point to mask the backup bit during level 2 file copying or modem transfers.


I actually did not remember, but my code says:
 

// We remove the modified flag because older disk controllers may
// get into trouble (in particular the TI FDC)
abyTFContent[10] = (byte)(file.getFlags() & ~ti.files.File.MODIFIED); 


#15 acadiel OFFLINE  

acadiel

    Dragonstomper

  • 848 posts
  • www.hexbus.com
  • Location:USA

Posted Fri Mar 7, 2014 10:20 AM

I've corrupted ROS with TI Workshop before. I remember Tursi looking at the illegal memory writes a while back. From then on, I only used DM2K for disk management in a RAMdisk system. :-)

#16 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Fri Mar 7, 2014 11:27 AM

I have done a bit of experimenting with CFG/ROS832. I found out that it is very particular about which disk manager you use with it. Or, rather, some disk managers just can't deal with a 3200-sector RAMdisk. Even though 3200 sectors is beyond quad density (2880 sectors), DISKREVIEW from the F'WEB package handles it quite nicely and all functions are completely supported. The same is true with DISK UTILITIES -  at least in Vn 4.12.

DM2K Vn 2.5 is another matter entirely. Cataloging a 3200 sector disk gives you all sorts of strange results. I didn't want to press my luck and see if the functions worked.

 

Can you send a screenshot or two to me?   DSKU and Disk Review calculate the free/used space from the bitmap.  DM2K uses the DSR.  It is very possible that I did not update the calculation for the latter.  

 

You can compare by going into BASIC and opening the catalog file as follows:

OPEN #1:"DSK5.",internal,fixed,input

INPUT #1:A$,a,b,c

CLOSE #1

PRINT A$,A,B,C

 

compare these numbers to what DM2K reports.  I'll try to at least test DM2K this weekend.  I have used DM2K with ROS832 installed and either haven't noticed the problem or we have something else going on here.

 

[edit: removed the relative clause]


Edited by InsaneMultitasker, Fri Mar 7, 2014 5:30 PM.


#17 atrax27407 OFFLINE  

atrax27407

    Dragonstomper

  • 635 posts

Posted Sat Mar 8, 2014 7:47 PM

I get the following:

 

Workspace  0  3200  1599



#18 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Sat Mar 8, 2014 10:38 PM

I get the following:

 

Workspace  0  3200  1599

 

Looks like I may have shared an earlier version as part of my testing in 2012.  The correct computation code is in the last version I produced.  I will hunt around for it.



#19 atrax27407 OFFLINE  

atrax27407

    Dragonstomper

  • 635 posts

Posted Sat Mar 8, 2014 11:48 PM

Do you think Tony Knerr is using the more recent version?



#20 Romko343 OFFLINE  

Romko343

    Space Invader

  • 20 posts

Posted Sun Mar 9, 2014 3:05 AM

What is ROS ? I found this file on one of my disks and it locks up when I run it under Editor/Assembler.. does it need a card to work ? Why does it lock up ?



#21 atrax27407 OFFLINE  

atrax27407

    Dragonstomper

  • 635 posts

Posted Sun Mar 9, 2014 7:18 AM

ROS= RAMdisk Operating System. It is the DSR for a Horizon RAMdisk.



#22 Gazoo OFFLINE  

Gazoo

    Stargunner

  • 1,507 posts
  • Location:Downingtown, PA

Posted Tue Mar 11, 2014 6:43 PM

So if I load a new ROS, and set the disks up exactly as in the old ROS, and do not format them.

Will the disk data still be there and the disks be intact?

 

Gazoo



#23 Gary from OPA OFFLINE  

Gary from OPA

    Moonsweeper

  • 414 posts
  • Location:The World Wide Web

Posted Wed Mar 12, 2014 5:49 AM

So if I load a new ROS, and set the disks up exactly as in the old ROS, and do not format them.

Will the disk data still be there and the disks be intact?

 

Gazoo

Normally that is the case.



#24 Gazoo OFFLINE  

Gazoo

    Stargunner

  • 1,507 posts
  • Location:Downingtown, PA

Posted Wed Mar 12, 2014 4:34 PM

Normally that is the case.

 

Had I tried it before asking, I would have seen the 'Keep existing disk information? Y/N' query at the bottom of the screen. Doh!

 

Gazoo



#25 InsaneMultitasker OFFLINE  

InsaneMultitasker

    Stargunner

  • Topic Starter
  • 1,484 posts

Posted Fri Mar 28, 2014 11:37 AM

Just one of minor bugs in 8.14F with its messy usage of management of resources available, it was designed thinking there was a another drive controller in the box.

 

I corrected this bug in ROS9, and if Tim is kind enough to past me on his 8.32 source, I can quickly help fix this error up along with other improvements in the future.

 

I read through the source code printout this past weekend.   RAMBO page usage and allocation is a bit fuzzy to me.  There is a pagemap which stores the CRU setting for each page, but the pagemap consists of all available memory.  It isn't clear to me how the RAMBO opcode determines which RAM is available and where it can start.   I do not know of any programs that actually use RAMBO beyond the included demo.... 

 

Also, the pagemap is only large enough for 260 pages, which equates to just over 2MB.   My Horizon 3000 is built up to 8MB using 16x512K chips.  Depending on how RAMBO is allocated, either the pagemap must be extended or the memory usage mechanism changed to hold only the open pages.   Did you address this limitation in ROS 9?







Also tagged with one or more of these keywords: ROS, CFG, RAMDISK

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users