Welcome, Guest. Please login or register.


Author Topic: EXDOS (Read 25501 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #30 on: 2014.April.28. 22:54:43 »
I forgot one:
9Fh  .INP       - Invalid number of parameters
In version 1.3 changed to "Wrong number of parameters"
Which are the better?

Offline BruceTanner

  • EP lover
  • *
  • Posts: 607
  • Country: gb
Re: EXDOS
« Reply #31 on: 2014.April.28. 23:00:27 »
Quote from: Zozosoft
I forgot one:
9Fh  .INP       - Invalid number of parameters
In version 1.3 changed to "Wrong number of parameters"
Which are the better?
I think ”Wrong number of parameters” is more user-friendly, ”invalid” is a bit computer-techy-geeky

Offline BruceTanner

  • EP lover
  • *
  • Posts: 607
  • Country: gb
Re: EXDOS
« Reply #32 on: 2014.April.28. 23:14:25 »
I do remember we had some re-entrancy issues with EXOS with the Abort/Retry messages - the main program has called EXOS to do eg a file read and it's gone deep into EXOS and the device driver, and then has to print the message with more EXOS calls...I don't know if the 0B1h change could have something to do with this

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #33 on: 2014.April.28. 23:23:12 »
Quote from: BruceTanner
I think ”Wrong number of parameters” is more user-friendly, ”invalid” is a bit computer-techy-geeky
Ok, i kept it.

Quote
Missing the:
- File exists
- RAM disk already exists
- Invalid file attributes
- Invalid MAPDISK
- Data error
- No RAM disk
For these also are unknow the IS error identifier. Most of them found in the VT-DOS documentation. (.FILEX, ?, .IATTR, .IMAP, .DATA, ? ) But not for the two ones about the RAM disk, because no RAM disk on TVC.
Looking the logic of other codes what do you think about .RAMX and .NORAM?

Offline BruceTanner

  • EP lover
  • *
  • Posts: 607
  • Country: gb
Re: EXDOS
« Reply #34 on: 2014.April.28. 23:31:38 »
Quote from: Zozosoft
Looking the logic of other codes what do you think about .RAMX and .NORAM?
Sounds very likely they are the ramdisk error codes! It should be reasonably easy to generate them too to check the error code values!

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #35 on: 2014.April.28. 23:42:44 »
Quote from: BruceTanner
I do remember we had some re-entrancy issues with EXOS with the Abort/Retry messages - the main program has called EXOS to do eg a file read and it's gone deep into EXOS and the device driver, and then has to print the message with more EXOS calls...
Interesting, I will look it is any special routine about this problem.

Quote
I don't know if the 0B1h change could have something to do with this
It is use same EXOS calls as other errors, just the text source changed: moved from error message table to other messages table.

Offline BruceTanner

  • EP lover
  • *
  • Posts: 607
  • Country: gb
Re: EXDOS
« Reply #36 on: 2014.April.29. 08:32:46 »
Probably when MAPDISK was removed to save ROM space the error message was removed too as it could no longer occur.

Maybe then when someone put MAPDISK back in they discovered the prompt did not work correctly, so they put in the test for 0B1h and the message text. So no real reason for not having it as an error message, just someone not understanding the whole system or the best way of doing it.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #37 on: 2014.April.29. 09:26:42 »
Good idea, but in one drive system the B: mapdisked to A: at system start.
Anyway version 0.3 have MAPDISK command, and 0B1h working same way as 1.x versions.

I can guess only one reason: to hide message from other programs which are using EXOS 28 (Explain error code) because look strange "Insert disk for" as error message :-)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #38 on: 2014.April.30. 11:52:02 »
There is the cleaned error table, now need to create the missing messages.
BFh  .NOUPB
This is happened when Unit Handler called for sector operations but the Unit Parameter Block not filled with boot sector parameters. Some disk errors also set status bit in UPB for set it is as invalid.
*** UPB not valid
are right?

BDh  .ICMD
This is happened when the Unit Handler got a unknow function code.
It is will be important in the future because when the EXDOS updated for using big, FAT16 disks, then need to define new FISH and Unit Handler function codes for the 32 bit LBA sector transfers. These are will be unknow for the old handlers, and the new handlers will be reject the old 16 bit LBA commands for avoid file system damage.
This error have a message in the version 0.0 documentation:
*** Invalid unit handler command
Probably use "function call" or "function code" instead "command" like as EXOS error messages?

BCh  .IUNUM
It is happened when used unknow internal unit number for operation, for example try to read from 5. floppy drive.
In the future this also can be more possible, with the removable SD Cards, if one card removed or replaced with less partitions, then less unit numbers will be valid.
From the 0.0:
*** Invalid unit number

BBh  .ISECT
If sector number for read/write point outside to disk area then this error occured. For example on 720K disks sector are exist from 0-1439, from 1440-... generate this error.
It is usaly occured when the FAT table or directory entry damaged.
From 0.0:
*** Invalid sector number

B0h  .ICALL
FISH called with unknow function code. As I say before the Unit Handler calls, in the future this is will be important.
Following EXOS similar error (0FFh):
*** Invalid FISH function code

A3h  .IFAT
This is occured when FAT entry point outside the disk. (I found bugs, or least missing feature about this checking :oops: It is not always checked, and when accepting the invalid value then will generate .ISECT error. 000h and 001h are also accepeted :oops: )
My suggestion:
*** Invalid FAT entry

9Bh  .OV64k
Try to transfer data over FFFFh Z80 address. For example read 200h bytes starting at FE00h. It is very frequent error because TAPE, NET and other EXOS devices not checking this problem.
Any good idea for the message?

9Ah  .FILE
End of file entry readed from the FAT before it is ending by the file size from directory
My suggestion:
*** Invalid end of file

Anyway good to talking about these, I see many more verification need to be added in my EXDOS expansions :oops:
« Last Edit: 2014.April.30. 12:38:35 by Zozosoft »

Offline BruceTanner

  • EP lover
  • *
  • Posts: 607
  • Country: gb
Re: EXDOS
« Reply #39 on: 2014.April.30. 14:08:57 »
Looks good to me zozo! My only comments are minor - ignore or change as you wish!

0BFh .NOUPB
*** Invalid UPB would be more consistent with the other error messages

0BDh .ICMD
I agree - be consistent with the other error messages

0B0h .ICALL
I would put File System Handler instead of FISH. If an end user saw something about a fish they would either be alarmed or amused!

09Bh .OV64k
If EXDOS behaves differently to the other devices isn't this really a bug in EXDOS? Could it be changed just to read up to FFFF and do away with this error?

B.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #40 on: 2014.April.30. 14:35:01 »
Quote from: BruceTanner
09Bh .OV64k
If EXDOS behaves differently to the other devices isn't this really a bug in EXDOS?
I think this is for protect system area at Page 0. Anyway all old tape released program fixed which are generated this error. Only when found new old program are possible :-)
Or when writing new program and typing some wrong addresses :oops:

Anyway I will look it is possible first loading to FFFFh and then generate this error. Now immediately generated before start loading.

But need a good message...
*** Memory overflow
*** 64K memory overflow
*** 64K address space overflow
???

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXDOS
« Reply #41 on: 2014.April.30. 14:54:28 »
Quote from: Zozosoft
BFh  .NOUPB
This is happened when Unit Handler called for sector operations but the Unit Parameter Block not filled with boot sector parameters. Some disk errors also set status bit in UPB for set it is as invalid.
*** UPB not valid
are right?

"UPB is not valid" sounds more correct.

Quote
9Bh  .OV64k
Try to transfer data over FFFFh Z80 address. For example read 200h bytes starting at FE00h. It is very frequent error because TAPE, NET and other EXOS devices not checking this problem.
Any good idea for the message?

Address space overflow, or something similar?

Quote
9Ah  .FILE
End of file entry readed from the FAT before it is ending by the file size from directory
My suggestion:
*** Invalid end of file

It sounds a bit odd for me. I think it should be something like "unexpected end of file" or so?

But - I guess - my ideas is too much based on my experience of UNIX-like systems, no more "segmentation fault" here at least :)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #42 on: 2014.April.30. 14:58:57 »
Quote from: lgb
I think it should be something like "unexpected end of file" or so?
Good idea!

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #43 on: 2014.April.30. 22:15:36 »
Quote from: Zozosoft
*** Memory overflow
*** 64K memory overflow
*** 64K address space overflow
Which is the best? Or other suggestions?

Offline BruceTanner

  • EP lover
  • *
  • Posts: 607
  • Country: gb
Re: EXDOS
« Reply #44 on: 2014.April.30. 22:20:34 »
Quote from: Zozosoft
Which is the best? Or other suggestions?
I'd go for *** Lazy programmer :evil:

But if I can't have that I'd go for *** 64k memory overflow :)