2 ; 2012-10-16, Oliver Schmidt
3 ; 2014-07-16, Greg King
5 ; unsigned char __fastcall__ _syschdir (const char* name);
9 .import diskinit, fnunit, curunit, initcwd
10 .importzp ptr1, tmp1, tmp2
12 ;--------------------------------------------------------------------------
22 ; Process first character
31 ; Process second character
38 stx tmp1 ; First digit
39 sta tmp2 ; Second digit
41 ; Multiply first digit by 10
45 asl a ; * 4, carry cleared
47 asl a ; * 10, carry cleared
49 ; Add second digit to product
54 ; Process third character
60 ; Check device readiness
68 lda fnunit ; Set by diskinit
70 jmp initcwd ; Returns with A = 0
72 ; Return with error in A
74 err: lda #9 ; "Illegal device"
79 ;--------------------------------------------------------------------------
80 ; getdigit -- Converts PetSCII to binary.
81 ; Sets carry if the character is outside of '0'-'9'.