Image Map Image Map
Results 1 to 6 of 6

Thread: Run Time Error R6001 when running DOSSHELL

  1. #1
    Join Date
    Dec 2011
    Location
    NJ
    Posts
    807
    Blog Entries
    13

    Default Run Time Error R6001 when running DOSSHELL

    This is a low-priority issue for me, since I don't normally run DOSSHELL, but it worries me all the same. Upon running DOSSHELL on my 1984 PC AT running IBM DOS 5, I get the following error after all directories are loaded:
    20180711_231835.jpg

    According to this Microsoft KB article, this error occurs when "The DOSSHELL.EXE file cannot be found on your disk, or there is not enough free memory in your system for the program". However, on my AT, I have 590kB of conventional memory.
    20180711_232053.jpg

    Additionally, DOSSHELL.EXE, COMMAND.COM, and DOSSWAP.EXE are all present!
    20180711_232258.jpg

    Based on the DOSSHELL.SWP timestamp, the last time I ran DOSSHELL was in November 2016, and I don't recall any issues back then. Renaming DOSSHELL.SWB doesn't change anything.

    Has anyone seen an issue like this before w/ DOSSHELL where there's sufficient memory _and_ both COMMAND.COM and DOSSHELL.EXE can be found? I wonder if there is bitrot/hard errors on the hard drive in the AT...
    Looking for: Needham's Electronics PB-10 Microcontroller Adapter (yes, still looking after 2 years :P).

  2. #2
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,191
    Blog Entries
    20

    Default

    R6001 is a null pointer assignment (Microsoft C).

  3. #3
    Join Date
    Dec 2011
    Location
    NJ
    Posts
    807
    Blog Entries
    13

    Default

    Quote Originally Posted by Chuck(G) View Post
    R6001 is a null pointer assignment (Microsoft C).
    Does this imply that DOSSHELL was written in C, or did MASM also come with such a runtime?

    Why would assigning a NULL pointer cause an error (as opposed to accessing it)? That's perfectly legal in C world, often used to denote, say, the end of a linked list...
    Looking for: Needham's Electronics PB-10 Microcontroller Adapter (yes, still looking after 2 years :P).

  4. #4
    Join Date
    Jan 2014
    Location
    Freedom City
    Posts
    6,040
    Blog Entries
    1

    Default

    I wonder if you have a corrupt EXE.

  5. #5
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,191
    Blog Entries
    20

    Default

    MSC runtime has an interesting way of detecting storing into a null pointer. When loaded, it sets a constant in DS:0000. It checks that location on certain library calls and throws an error if DS:[0000] changes. The problem is that it's not detected until a system or library call happens, so it's not trapping the violation when it occurs, but sometime afterward. This isn't bad when you're debugging source code, but if you don't have that, it can be nearly impossible to determine the cause.

    It could be a corrupted binary--at least that's a good starting point.

  6. #6
    Join Date
    Aug 2006
    Location
    Chicagoland, Illinois, USA
    Posts
    5,302
    Blog Entries
    1

    Default

    Or corrupted memory. Couldn't hurt to do a thorough memory test.
    Offering a bounty for:
    - The software "Overhead Express" (doesn't have to be original, can be a copy)
    - A working Sanyo MBC-775, Olivetti M24, or Logabax 1600
    - Documentation and original disks for: Panasonic Sr. Partner, Zenith Z-160 series
    - Music Construction Set, IBM Music Feature edition (has red sticker on front stating IBM Music Feature)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •