Subj : Closing a file in Assembly on the VIC-20
To   : Lawrence Woodman
From : Daniel Path
Date : Fri Jun 18 2021 08:54 pm

Hello Lawrence.

18 Jun 21 06:56, you wrote to you:

LW> On Thu, 17 Jun 2021 18:56:16 -0000 (UTC), Lawrence Woodman wrote:

>> On Thu, 17 Jun 2021 11:29:57 -0000 (UTC), Tilmann Hentze wrote:
>>
>>> Lawrence Woodman <[email protected]> wrote:
>>>> I have created a piece of code which replicates the problem below
>>>> if anyone has any ideas where I'm going wrong I'd be very
>>>> grateful.
>>>>
>>>> [code snipped]
>>>>
>>>> main
>>>>             lda  #$07         ; Length of file name
>>>>             ldx  #<filename   ; Low byte of file name location
>>>>             ldy  #>filename   ; High byte of file name location
>>>>             jsr  SETNAM       ; Set the name
>>>
>>>>             lda  #$08         ; Logical file number
>>>>             ldx  #$08         ; Device number
>>>>             ldy  #$01         ; Secondary address - $01 because
>>>> saving            jsr  SETLFS       ; Set above parameters
>>>
>>> I'd switch the two previous blocks around, so that you first set up
>>> the channel and then set the file name. Thanks for the suggestion.
>>> I gave it a go but unfortunately it still
>> gives the same result.
>>
>>
>>>> [code snipped]
>>>>             lda  #$08         ; Logical file number
>>>>             jsr  CLOSE        ; Close the file
>>>
>>> Looks good to me. Perhaps it will work with the first mentioned
>>> change? Sadly not.  However, I'm not sure that a CLOSE is necessary
>>> as I noticed
>> in other code examples that it isn't used.  I've tried without it
>> and also checked for errors via a carry after the SAVE but still no
>> joy. If you or anyone else has any ideas I'd love to get this
>> working.


LW> I've managed to track down the problem.  Because I was automating some
LW> of the testing around this I hadn't left a long enough delay
LW> before displaying the directory.  It turns out that it takes a little
LW> longer than I expected for the SAVE command to complete the write.
LW> Once I left a bigger delay before checking the directory everything
LW> was fine.  It also appears that there is no need to call CLOSE either.

and what are you coding? :)

--
Daniel

... BBS: Uptime is 02d 20h 42m 32s (BT-Uptime/OS2, V1.5)
--- GoldED+/EMX 1.1.4.7
* Origin: Roon's BBS - Budapest, HUNGARY (2:371/52)