1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-10-30 06:24:09 +00:00
millfork/include/stdio.mfk

55 lines
932 B
Plaintext
Raw Normal View History

2017-12-06 23:23:30 +00:00
// target-independent standard I/O routines
import string
#if ZX_SPECTRUM
import stdio_zxspectrum
#endif
#if not(ZX_SPECTRUM)
2017-12-06 23:23:30 +00:00
void putstr(pointer str, byte len) {
byte index
index = 0
while (index != len) {
putchar(str[index])
index += 1
}
2018-01-20 21:03:56 +00:00
}
void putstrz(pointer str) {
byte index
index = 0
while str[index] != 0 {
putchar(str[index])
index += 1
}
}
#endif
2018-12-19 18:01:53 +00:00
void putword(word w) {
byte digits
byte lastdigit
digits = 0
word mask
for mask:[40000,4000,400,40,4] {
lastdigit = 0
while w >= mask {
w -= mask
lastdigit += 4
}
mask >>= 2
while w >= mask {
w -= mask
lastdigit += 1
}
if digits != 0 || lastdigit != 0 {
putchar('0' + lastdigit)
digits += 1
}
}
if digits == 0 {
putchar('0')
}
}