import err #if ARCH_I80 import string_fastpointers #else import string_fastindices #endif void strzappend(pointer buffer, pointer str) { strzcopy(buffer + strzlen(buffer), str) } void strzappendchar(pointer buffer, byte char) { buffer += strzlen(buffer) buffer[0] = char buffer[1] = nullchar } word strz2word(pointer str) { byte i byte char word next word result result = 0 i = 0 errno = err_ok while true { char = str[i] if char == nullchar { if i == 0 { errno = err_numberformat } return result } if '0' <= char <= '0' + 9 { next = result * 10 next += char - '0' if next < result { errno = err_range } result = next } else { errno = err_numberformat return result } i += 1 } }