; ; 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 _stdin .import _fgetc .export _gets ; --------------------------------------------------------------- ; char *__near__ __fastcall__ gets (char *s) ; --------------------------------------------------------------- .segment "CODE" .proc _gets: near .segment "CODE" jsr pushax lda regbank+4 ldx regbank+5 jsr pushax ldy #$03 jsr ldaxysp sta regbank+4 stx regbank+4+1 jsr decsp2 jsr push0 L0002: lda _stdin ldx _stdin+1 jsr _fgetc ldy #$02 jsr staxysp cpx #$FF bne L000A cmp #$FF bne L000A lda #$00 tay sta (regbank+4),y lda _stdin+1 sta ptr1+1 lda _stdin sta ptr1 iny lda (ptr1),y inx and #$04 beq L000F txa jmp L0001 L000F: lda (sp),y dey ora (sp),y beq L0001 jmp L0003 L000A: ldy #$02 lda (sp),y cmp #$0A bne L000B lda #$00 tay sta (regbank+4),y jmp L0003 L000B: lda (sp),y ldy #$00 sta (regbank+4),y inc regbank+4 bne L000D inc regbank+4+1 L000D: ldx #$00 lda #$01 jsr addeq0sp jmp L0002 L0003: ldy #$07 jsr ldaxysp L0001: pha ldy #$04 lda (sp),y sta regbank+4 iny lda (sp),y sta regbank+5 pla jmp incsp8 .endproc