[Coco] Run Time Error 203 "Illegal Mode"
coco at jechar.ca
coco at jechar.ca
Tue Aug 11 13:27:26 EDT 2020
If I were to just change :READ to :UPDATE would Basic09 wait for a
lock that ls had put on the file automatically ? Also
is SHELL "touch /dd/TMP/dirlist.tmp;del /dd/TMP/dirlist.tmp;ls
>/dd/TMP/dirlist.tmp" preferable or worse ?
On 2020-08-10 18:19, Rick Ulland wrote:
> Just spitballin', I guess scheduling and would try eliminating the 3
> sequential forks to shell. Don't touch, just delete the temp file from
> inside B09 (DELETE "pathname"), and since 'ls' is an external program,
> maybe waste a little time inside B09 so the SHELL lsĀ command can wrap
> up and close the file before you OPEN read mode.
>
> -ricku
> CoNect
>
>
> On 8/10/20 2:47 PM, Wayne Campbell wrote:
>> There are a number of places where a 203 error could occur in this
>> code,
>> but none of them seems to be incorrect on the surface. If your module
>> is
>> small enough, and you can run it in the Basic09 editing environment, I
>> suggest using TRON and TROFF and then stepping through the code to see
>> what
>> error gets generated on which line. In my experience, a system level
>> error
>> may not always be the exact error occurring, and it may be something
>> that
>> will fall under a Basic09 error code in debug mode.
>>
>> I'm not sure why you are using the touch command, unless it's just to
>> make
>> sure the file exists, but that has nothing to do with the error you
>> are
>> getting.
>>
>> Wayne
>>
>> The Structure of I-Code
>> http://www.cocopedia.com/wiki/index.php/The_Structure_of_I-Code
>>
>>
>>
>> On Mon, Aug 10, 2020 at 12:34 PM <coco at jechar.ca> wrote:
>>
>>> On 2020-08-10 16:10, Wayne Campbell wrote:
>>>> OK. I had to refresh my memory and make sure I was remembering the
>>>> 203
>>>> error correctly. 203 is an input/output error. Generally, it means
>>>> you
>>>> are
>>>> attempting to operate in a file in a manner not consistent with the
>>>> way
>>>> you
>>>> opened or created it. Usually, it means you are attempting to write
>>>> to
>>>> a
>>>> read only file (:READ) or read from a write only file (:WRITE). If
>>>> it
>>>> isn't
>>>> a file, then you are operating on a module as input that should be
>>>> output
>>>> or vice-versa.
>>>>
>>>> I agree with what Curtis wrote. You should provide some code here
>>>> that
>>>> can
>>>> help us determine where the problem is occuring.
>>>>
>>>> Wayne
>>>>
>>>>
>>>> On Mon, Aug 10, 2020 at 10:51 AM <coco at jechar.ca> wrote:
>>>>
>>>>> I have a basic09 module the source compiles fine but when
>>>>> I try to run it it gives an error 203.
>>>>>
>>>>> Not sure where to even start to figure out what's wrong.
>>>>> Would anyone know what are the most common sources of a 203 error ?
>>>>>
>>>>> Charlie
>>>>>
>>>>> --
>>>>> Coco mailing list
>>>>> Coco at maltedmedia.com
>>>>> https://pairlist5.pair.net/mailman/listinfo/coco
>>>>>
>>> The Code two related GOSUB subroutines.
>>>
>>> (* Subroutines *)
>>> 100 (* CAPS last setup tem-file *)
>>> SHELL "touch /dd/TEMP/dirlist.tmp"
>>> SHELL "del /dd/TEMP/dirlist.tmp"
>>> SHELL "ls > /dd/TEMP/dirlist.tmp"
>>> RETURN
>>> 200 (* CAPS last *)
>>> GOSUB 100
>>> OPEN #fp,"/dd/TEMP/dirlist.tmp":READ
>>> WHILE NOT EOF(#fp) DO
>>> READ #fp,line$
>>> tc=ASC(MID$(line$,1,1))
>>> cv=LEN(line$)
>>> IF cv<25 THEN
>>> IF tc<97 THEN
>>> SHELL"RENAME "+line$+" zzz"+line$
>>> ENDIF
>>> ENDIF
>>> ENDWHILE
>>> CLOSE #fp
>>> SHELL "DIRSORT"
>>> GOSUB 100
>>> OPEN #fp,"/dd/TEMP/dirlist.tmp":READ
>>> WHILE NOT EOF(#fp) DO
>>> READ #fp,line$
>>> c$=MID$(line$,1,3)
>>> cv=LEN(line$)
>>> IF c$="zzz" THEN
>>> c$=RIGHT$(line$,(cv-3))
>>> SHELL "RENAME "+line$+" "+c$
>>> ENDIF
>>> ENDWHILE
>>> CLOSE #fp
>>> RETURN
>>>
>>>
>>>
>>> --
>>> Coco mailing list
>>> Coco at maltedmedia.com
>>> https://pairlist5.pair.net/mailman/listinfo/coco
>>>
More information about the Coco
mailing list