Jump to content
IGNORED

MDOS V7.30


9640News

Recommended Posts

1 hour ago, globeron said:

Made a new directory and copying goes okay. (First I thought it had to do with filenames eg. Same directory name as filename).

Tried to rename/delete/makedir the failing directory but still have the issues, so guess it is that ram part ("sectors") failing

The ramdisk sector routine is very simple: it either reads or writes the sector so long as it is within range of the maximum sector count. There can be no "read" or "write" error in the sense of other devices.

 

The symptoms point to a hardware problem with your ramdisk.  This weekend I will review the partition structure to rule out a problem with smaller devices, just to be certain. 

  • Like 1
Link to comment
Share on other sites

1 hour ago, InsaneMultitasker said:

The ramdisk sector routine is very simple: it either reads or writes the sector so long as it is within range of the maximum sector count. There can be no "read" or "write" error in the sense of other devices.

 

The symptoms point to a hardware problem with your ramdisk.  This weekend I will review the partition structure to rule out a problem with smaller devices, just to be certain. 

Thank you.  (I will also try to do it again with the RS232 card and RaveCard removed and only CorComp). I also have a TI FDC to test if needed).

Link to comment
Share on other sites

On 8/29/2021 at 10:22 PM, InsaneMultitasker said:

What is the error 'out of buffers' trying to convey in the video after 12.53?     @F.G. Kaal  ?  Is this a memory issue or a disk issue or .. ?

 

Short answer: Out of buffers is error 4 and it is returned by the DSR.

 

Long answer:

Last executed command is:

Copy: DSK1.GPL.README

    To: DSK6.GPL.README

error 4: OpenDst [Out of Buffers]

 

See code here below:

4th error is: "Out of buffers"

 

 

caused by: "Opendst" which is the 7th entry in cErrtyp[].

 

See also function ferr() here below:

    printf("error %d: %s [%s]",errno, cErrtyp[e-1], cDsrerr[errno]);

 

using cErrtyp[e-1] so called as ferr(8);

(oops ... old code ... I suppose that in the very first version of DM2K the error code 0 was a special case

  and therefor I had to add +1 to the ErrType. This is not needed anymore)

 

 

See also function copy() here below:

caused by:

 

        if (adofile(Dstfil,dbuf,&rsect,&nsect))
        {
            ferr(8); break;
        }
 

the functions adifile and adofile stands for "Access Direct Input File" and "Access Direct Output File". These "C99" functions call

the level2 functions >X4 and >X5.

 

Reading the file properties from DSK1 succeeded but creating the file on DSK6 failed, hence ferr(8).

The DSR returned error code 4.

 

Because copying the README file failed one should examine the header/data of this particulair readme file

and also try to copy the same set of files without that README file. What happens?

 

 

 

char *cDsrerr[11] = {
"Device name",
"Write protected",
"Bad open attribute",
"Illegal opperation",
"Out of buffers",
"Read past eof",
"Device error",
"File error",
"File to big",
"Name to long",
"Circulair buffer full"
};

 

char *cErrtyp[15] = {
"Opendir", "Readdir",
"Delete",  "Load", "Save",
"Opensrc", "Readsrc",
"Opendst", "Writedst",
"Protect", "Unprotect", "Rename",
"Mkdir",   "CBstor",
"Move"
};

 

ferr(e) int e;
{
    locate(23,xpos1);
    printf("error %d: %s [%s]",errno, cErrtyp[e-1], cDsrerr[errno]);
    honk();
    keyrelease(); getkey();
    /*clearxy(xpos1,22); clearxy(xpos1,23);*/
    cleary(22); cleary(23);
}

 

/*
 * copy - Copy a file
 */
copy(i) int i;
{
char *f;
int  *fi;
int  csect;
int x;
    f = getfps(FilesP, i, O_NAME);
    do {
        rsect = nsect = 0;
        if (adifile(Srcfil,dbuf,&rsect,&nsect))
        {
            ferr(6); break;
        }
        if (adofile(Dstfil,dbuf,&rsect,&nsect))
        {
            ferr(8); break;
        }
        fi = dbuf; nsect = fi[2];
        sect = 0;
        while (sect < nsect)
        {
            rsect = nsect - sect;
            if (rsect > 32) rsect = 32;
            scssct = rsect;
            csect = sect;
            locate(6,77); dprintf("%3dR",sect);
            if (adifile(Srcfil,dbuf,&scssct,&csect))
            {
                ferr(7); break;
            }
            locate(6,77); dprintf("%3dW",sect);
            scssct = rsect;
            csect = sect;
            if (adofile(Dstfil,dbuf,&scssct,&csect))
            {
                ferr(9); break;
            }
            sect = sect + rsect;
        }
    } while(0);
    locate(6,77); dputs("    ");
    return errno;
}

 

 

  • Like 2
Link to comment
Share on other sites

Thanks Fred for that explanation.  For @globeron, I wonder if the issue then is insufficient memory where he has consumed too much memory in his AUTOEXEC file, likely tying up too much memory by using TIMODE and/or the RAMDISK command.

 

@globeron, I might suggest using the ampersand key (&) and then <ENTER> to cleanly sweep your TIMODE and RAMDISK use freeing up memory after booting, then trying to run GDM2K again, and see if you get those errors when copying files. It is possible you may be short of memory by one or two 8K memory pages for everything @F.G. Kaal, is doing in his program during the copy process.  That is just a guess at this point.

 

Beery

 

  • Like 2
Link to comment
Share on other sites

22 hours ago, globeron said:

Thank you.  (I will also try to do it again with the RS232 card and RaveCard removed and only CorComp). I also have a TI FDC to test if needed).

Reformat the ramdisk and try to copy some files.  When you encounter the error, please run this program and report the results.  To use it, type "RAMTEST DSK6." (provided that is your ramdisk disk number)

 

The program reads consecutive sectors from the ramdisk and stops when it encounters an error or the 'end' of the disk.  I limited the loop to 3300 sectors so that we can try your SCS4 device as well.  

 

RAMTEST

 

(Observation: when run on a HFDC or SCSI device, the IO read time is much slower - this is expected to a degree - and it makes me wonder if some further optimization is possible)

  • Like 1
Link to comment
Share on other sites

On 9/1/2021 at 6:16 PM, Ksarul said:

I like it! :)  I don't think I have ever seen an HRD3000 built out to four-chip RAM stacks (and one stack has five). That's a lot of potential solder fail points though. . .

 

 

I have no clue who made it, I kept it after the big sale last time as it is the only ramdsk hw I had which  works with the Geneve. (Corcomp 512K does not work correct, or does it now with MDOS7.30? Then i maybe swap it).

 

Here is a better picture of the back.

 

20210902_193332.jpg

  • Like 1
Link to comment
Share on other sites

On 9/1/2021 at 7:20 PM, 9640News said:

Just saw the pictures of your board. Is that tape across one section?  Is it contacting any of the pins?

 

That is the first time I have seen a board with chips stacked 4 deep. 

The tape is not in contact with the pins, but to keep the wiring in place of the battery holders as those were a bit long. Hmm might it be interference of those cables with the ram? I have not tried to keep those wires away from those stacks.

Link to comment
Share on other sites

20 hours ago, 9640News said:

Thanks Fred for that explanation.  For @globeron, I wonder if the issue then is insufficient memory where he has consumed too much memory in his AUTOEXEC file, likely tying up too much memory by using TIMODE and/or the RAMDISK command.

 

@globeron, I might suggest using the ampersand key (&) and then <ENTER> to cleanly sweep your TIMODE and RAMDISK use freeing up memory after booting, then trying to run GDM2K again, and see if you get those errors when copying files. It is possible you may be short of memory by one or two 8K memory pages for everything @F.G. Kaal, is doing in his program during the copy process.  That is just a guess at this point.

 

Beery

 

I tried with &  and  also copying the readme and without readme same result with errors for that directory. Then i created another directory and it works to copy all files wihout problem. (Now I have 3 directories I believe that is the max).

 

Then after the error or 3 directories Copying to the root directory is no problem

 

Here is a video (it also happens when i use only 2 directories and not 3).

 

 

Edited by globeron
Video link added
Link to comment
Share on other sites

11 hours ago, InsaneMultitasker said:

Reformat the ramdisk and try to copy some files.  When you encounter the error, please run this program and report the results.  To use it, type "RAMTEST DSK6." (provided that is your ramdisk disk number)

 

The program reads consecutive sectors from the ramdisk and stops when it encounters an error or the 'end' of the disk.  I limited the loop to 3300 sectors so that we can try your SCS4 device as well.  

 

RAMTEST 1.13 kB · 4 downloads

 

(Observation: when run on a HFDC or SCSI device, the IO read time is much slower - this is expected to a degree - and it makes me wonder if some further optimization is possible)

 

I think I get errors for both DSK6. And SCS4.

Does it mean bad ram memory block?

 

 

20210902_213617.jpg

20210902_213629.jpg

20210902_213637.jpg

20210902_213656.jpg

20210902_213710.jpg

20210902_213725.jpg

20210902_213728.jpg

Link to comment
Share on other sites

1 hour ago, globeron said:

I have no clue who made it, I kept it after the big sale last time as it is the only ramdsk hw I had which  works with the Geneve. (Corcomp 512K does not work correct, or does it now with MDOS7.30? Then i maybe swap it).

 

CorComp 512K does not work with the Geneve.  It is not a software issue, rather a hardware issue.

  • Like 1
Link to comment
Share on other sites

1 hour ago, globeron said:

I think I get errors for both DSK6. And SCS4.

Does it mean bad ram memory block?

the errors displayed by 'ramtest' require interpretation;  I do not see a bad ram memory block as a result based on the sizes you configured.   Did you encounter an error during a copy prior to executing this program? 

Link to comment
Share on other sites

7 hours ago, InsaneMultitasker said:

the errors displayed by 'ramtest' require interpretation;  I do not see a bad ram memory block as a result based on the sizes you configured.   Did you encounter an error during a copy prior to executing this program? 

I ran it after i got the errors with gdm2k, see the errors in the video.

 

 

  • Like 2
Link to comment
Share on other sites

2 hours ago, globeron said:

I ran it after i got the errors with gdm2k, see the errors in the video.

 

 

I will load GDM2K on my system.

(Edit: I downloaded GDM2K v3.2 and formatted a 3200 sector ramdisk using GenCFG.  I copied files into three subdirectories and the root. No errors.  I also used MDOS and Directory Manager (DM) - both successful)

 

 Your two videos strongly suggest one of two problems: a Geneve OS 'disk' subdirectory bug that hasn't been identified or a GDM2K bug.  

 

I have used subdirectories on floppies quite regularly though not so much with MDOS 7.x. 

 

Questions:

(1) if you do NOT copy any files to the root DSK6., and only copy to the subdirectories, does the error occur?

(2) Does the error always occur on the 2nd file that you are copying?

  • Like 1
Link to comment
Share on other sites

12 hours ago, InsaneMultitasker said:

I will load GDM2K on my system.

(Edit: I downloaded GDM2K v3.2 and formatted a 3200 sector ramdisk using GenCFG.  I copied files into three subdirectories and the root. No errors.  I also used MDOS and Directory Manager (DM) - both successful)

 

 Your two videos strongly suggest one of two problems: a Geneve OS 'disk' subdirectory bug that hasn't been identified or a GDM2K bug.  

 

I have used subdirectories on floppies quite regularly though not so much with MDOS 7.x. 

 

Questions:

(1) if you do NOT copy any files to the root DSK6., and only copy to the subdirectories, does the error occur?

(2) Does the error always occur on the 2nd file that you are copying?

(using GDMK2 v3.2, sorry was using v3.1, but it is the same result)

 

This is the problem:

> when there is a 3rd Directory, the it fails on copying the 2nd file  [out of buffers]

 

> if I have 2 Directories, the problem does not occur.

> I have used F8 to create directories, but also did not create a directory manually

   then with GDMK2 v3.2 I copied 3 directories in 1 go

   (then error also occurs only on the 3 directory and 2nd file)

 

I was wondering is there something to test the memory of the Myarc card itself? 

  • Like 1
Link to comment
Share on other sites

Maybe something to do with the formatting the RamDSK with GenCFG 1.2  (I only have this version to format disks)

 

I just tried with MDOS 6.50.  Same problem with a 3rd directory and a 2nd file copying to that directory.

(thus can only copy 1 file to the 3rd created directory)

 

Everything works fine with max. 2 directories in both MDOS 7.30 / MDOS 6.50 on the   RamDSK

(I can live with that)

 

For the RamHD  I have 3 directories and is okay for copying

 

Link to comment
Share on other sites

 

RamHD, i can make many directories and copy to it.

 

Once in a while I see a strange file called 1400 on the disk DIS/VAR. Size 1. (No content in tje file).  I deleted it.   (Probably referring to CRU 1400).  I also see the file on the gotek/floppy disk (see screenshot)

 

Now somehow i was able to have 3 directories on the RamDSK. Not sure if it is related.

 

When copying the 4th directory, now I get a message Protected, overwrite?

 

Furthermore a MEM size output (size is the same after the & test).

 

20210903_220544.jpg

20210903_215243.jpg

20210903_220518.jpg

Link to comment
Share on other sites

The Geneve OS / file system only allows 3 subdirectories on a DiSK device.  The error message in another program, Directory Manager, displays "cannot create directory", Fred might want to modify this function.

 

I seem to recall seeing a similar file to 1400, usually caused by some batch file or keyboard input, that then creates the file. 

 

MEMTEST v1.1 will test the Geneve memory; I believe you and @9640News tried this already.

 

I tested the 3 directory scenario on both of my ramdisks and I am able to copy files without error.  I also tried copying from a floppy via a CorComp controller, with no errors.  

  • Like 1
Link to comment
Share on other sites

@globeron, today I made another attempt to replicate your failure:  I reformatted my ramdisk using Geneve OS 7.30 OS and GenCFG.  I then copied files to the root, created three subdirectories, and copied files into each subdirectory.  There were zero errors reported.  

 

If you are willing to do so, there is one "last" thing I can think to try and that is to mimic your every step from format to failure.

 

To do so, I would need to know the choices you select to format the ramdisk, which files you copy to the root AND in what order you copy them, the steps for directory creation and the order you copy the files into the directories.  I will need every file that you load or copy so that my test is 'the same'.  I would also like the AUTOEXEC that you execute when starting the OS and any executables that are loaded at startup.  

 

Youtube is acceptable (and may be simplest) so long as I can follow every step to the point of failure. 

 

I have a CorComp floppy controller in my PEB and my Geneve has the same amount of RAM, so we should be on equal footing for hardware. 

 

If you have not already done so, please run CRCOS7 to confirm the integrity of the Geneve v7.30 operating system.  Let's make sure that we haven't overlooked anything. 

 

Lastly, and this is important, please confirm whether you are consistently using Geneve OS 7.30 for all operations.  The disk image you provided a few days ago contains MDOS 6.50

 

Thanks

Link to comment
Share on other sites

I thought, to do a quick video starting from scratch, after 5+ hours i have all kind of issues. I think the HRD has the HW issues as far I can see when running only with Gotek USB it seems to be okay. (And HRD removed).

 

Also tried without batteries in HRD, reseated some chips.

 

Once I get it all working again, then I will leave it as is and only use it as fast startup disk, rest via usb gotek.

 

But I am still curious (with HRD inserted) where the files named '1400'  dis/var 1 come from and even get timestamp updated. And which program writes this to disk???

 

I already removed the battery in the Geneve, ard itself and reseated all cards.

 

 

 

 

 

20210905_103930.jpg

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...