; ; File generated by cc65 v 2.19 - Git ab8bb268 ; .fopt compiler,"cc65 v 2.19 - Git ab8bb268" .setcpu "6502" .smart on .autoimport on .case on .debuginfo off .importzp sp, sreg, regsave, regbank .importzp tmp1, tmp2, tmp3, tmp4, ptr1, ptr2, ptr3, ptr4 .macpack longbranch .import _open .import _close .export _exec .import _exit .import _utoa .import _strncat .import __mappederrno .import _getcurrentdevice .importzp _vartab .importzp _memsize .importzp _txtptr .import _basbuf .importzp _basbuf_len .segment "DATA" .segment "LOWCODE" _basic: .byte $00 .addr _basic+37 .word $0000 .byte $9C .byte $3A .byte $93 .byte $22,$22 .byte $AA .byte $22 .byte $22,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20 .byte $20,$20,$20,$20,$20 .byte $2C .byte $30,$31,$00 .segment "DATA" ; --------------------------------------------------------------- ; int __near__ __fastcall__ exec (const char *progname, const char *cmdline) ; --------------------------------------------------------------- .segment "CODE" .proc _exec: near .segment "CODE" jsr pushax jsr _getcurrentdevice sta M0002 cmp #$08 bcs L0003 cmp #$01 bne L0012 L0003: cmp #$1F lda #$00 sbc #$00 bcs L0012 jmp L0013 L0012: lda #$09 jsr __mappederrno jmp L0001 L0013: lda M0002 jsr pusha0 lda #<(_basic+34) ldx #>(_basic+34) jsr pushax ldx #$00 lda #$0A jsr _utoa lda M0002 cmp #$01 beq L0014 ldy #$05 jsr pushwysp lda #$01 jsr pusha0 ldy #$04 jsr _open sta M0001 stx M0001+1 cpx #$80 bcc L0008 ldx #$FF txa jmp L0001 L0008: lda M0001 ldx M0001+1 jsr _close L0014: lda #$00 sta M0003 L0009: lda #<(_basic+12) ldx #>(_basic+12) clc adc M0003 bcc L000D inx L000D: sta sreg stx sreg+1 ldy #$03 jsr ldaxysp ldy M0003 sta ptr1 stx ptr1+1 lda (ptr1),y ldy #$00 sta (sreg),y cmp #$00 beq L000A inc M0003 lda M0003 cmp #$14 bcc L0009 L000A: ldy M0003 lda #$22 sta _basic+12,y lda _memsize sec sta _vartab lda _memsize+1 sbc #$01 sta _vartab+1 lda #$8F sta _basbuf lda #$00 sta _basbuf+1 tay lda (sp),y iny ora (sp),y beq L000F lda #<(_basbuf) ldx #>(_basbuf) jsr pushax ldy #$05 jsr pushwysp lda #<(_basbuf_len) ldx #>(_basbuf_len) jsr decax2 jsr _strncat L000F: lda #<(_basic) ldx #>(_basic) sta _txtptr stx _txtptr+1 jsr _exit L0001: jmp incsp4 .segment "BSS" M0001: .res 2,$00 M0002: .res 1,$00 M0003: .res 1,$00 .endproc