INTL 3:770/1 3:770/3
REPLYADDR lorrywoodman@gmail.com
REPLYTO 3:770/3.0 UUCP
MSGID: 56cc9714
PID: SoupGate-Win32 v1.05
Hello Everyone,
I've been trying to save some memory on the VIC-20 to a file on disk but
seem to be having some problems when it comes to close the file. At the
moment the file saves the data properly from assembly but I have to use
'CLOSE 8' from basic to prevent it having an asterisk next to the name in
the directory entry.
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.
; Basic Stub
TOK_SYS = $9E ; SYS token
.byt $01, $10 ; Load address ($1001)
* = $1001
.word basicEnd ; Next Line link, here end of Basic program
.word 1 ; The line number for the SYS statement
.byt TOK_SYS ; SYS token
.asc " "
.asc "4110" ; Start of machine language
.byt 0 ; End of Basic line
basicEnd .word 0 ; End of Basic program
; KERNEL/BASIC ROM Routines
CLOSE = $FFC3
SAVE = $FFD8
SETLFS = $FFBA
SETNAM = $FFBD
main
lda #$07 ; Length of file name
ldx #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
lda #flash ; High byte of start of memory block to save
sta $C2
lda #$C1 ; Pointer to location of start address
ldx #<(flashend+1) ; Low byte of (end of memory block + 1)
ldy #>(flashend+1) ; High byte of (end of memory block + 1)
jsr SAVE ; Perform save
lda #$08 ; Logical file number
jsr CLOSE ; Close the file
rts
filename .asc "FLASH"
;=================================
; Block of memory to save
;=================================
flash lda $900F ; Record initial screen border/background combo
ldx #$FF ; First combo is $FF
setcombo stx $900F ; Set screen border/background combo
; Time delay
ldy #$FF
delay dey
bne delay
dex ; Next combo
bne setcombo
sta $900F ; restore initial screen border/background combo
flashend rts
Thanks in advance
Lorry
---
Advanced Use of .LBR Files on CP/M
https://techtinkering.com/articles/advanced-use-of-lbr-files-on-cpm/
--- SoupGate-Win32 v1.05
* Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
SEEN-BY: 1/123 14/0 18/200 90/1 103/705 105/81 106/127 120/340 123/131
SEEN-BY: 129/305 134/100 153/105 135 250 757 802 6809 154/10 218/700
SEEN-BY: 220/70 221/1 6 226/17 30 227/114 229/101 424 426 428 700
SEEN-BY: 229/1016 1017 240/1120 5832 249/1 206 317 400 261/38 267/800
SEEN-BY: 282/1038 301/1 113 317/3 322/757 335/364 340/1000 342/200
SEEN-BY: 633/280 712/848 770/1 3 100 340 772/210 220 230 920/1 4500/1
SEEN-BY: 5058/104
PATH: 770/3 1 153/757 221/6 301/1 229/426
|