1
0
mirror of https://github.com/cc65/cc65.git synced 2026-02-19 00:22:23 +00:00
Files
cc65/libsrc/apple2/syschdir.s
2025-06-23 17:09:06 +02:00

39 lines
840 B
ArmAsm

;
; Oliver Schmidt, 17.04.2005
;
; unsigned char __fastcall__ _syschdir (const char* name);
;
.export __syschdir
.import pushname, popname
.import initcwd
.include "zeropage.inc"
.include "mli.inc"
__syschdir:
; Push name
jsr pushname
bne oserr
; Set pushed name
lda c_sp
ldx c_sp+1
sta mliparam + MLI::PREFIX::PATHNAME
stx mliparam + MLI::PREFIX::PATHNAME+1
; Change directory
lda #SET_PREFIX_CALL
ldx #PREFIX_COUNT
jsr callmli
bcs cleanup
; Update current working directory
jsr initcwd
lda #$00
; Cleanup name
cleanup:jsr popname ; Preserves A
oserr: rts