NC100 Software
A selection of readily available NC100 and related platforms’ utility software.
macOS/Linux
The following run on a host machine to process received files.
Notepad2Text
A short C program with no dependencies to convert transferred NC100 word processor files into rich or plain text files. Runs on macOS and Linux; untested on Windows.
Notepad2Bmp
A short C program with no dependencies to convert transferred NC100 screenshot files into BMP format and scale up by 3x. The repo also contains code to convert to the PCX format (see the Read Me file for details). Runs on macOS and Linux; untested on Windows.
NC100
NC100 State
This utility presents information about the NC100’s batteries, power source and, if present, its memory card. It uses one of the NC100’s output ports to gather this information.
Curiously, the Amstrad NC100 I/O Specification states that bit 5 of read status byte indicates “input voltage, 1 if >= 4 volts”. The Amstrad Notepad Advanced User Guide interprets this as AC power (as I have), but running the code with or without a mains adaptor connected to the NC100 doesn’t change the value of the bit! I’m coming round to thinking that this is bit simply indicates whether or not the NC100 has enough power from any source to run happily.
I’d love to know what the correct interpretation is. If you know, please tell me via nc100@smittytone.net.
Download the code as a text file or copy the listing:
10 REM NC100 state reporter (1.0.0)
20 DIM MC% 16
30 PROCasm
40 CALL MC%
50 VA%=?value
60 CLS:PRINT "NC100 State ("+STR$(VA%)+")":PRINT
70 PRINT "AA batteries ";
80 IF (VA% AND &08)=0 PRINT "good" ELSE PRINT "weak"
90 PRINT "Li battery ";
100 IF (VA% AND &04)=0 PRINT "good" ELSE PRINT "weak"
110 IF (VA% AND &20)=0 PRINT "AC power on" ELSE PRINT "AC power off"
120 PRINT "Memory card ";
130 IF (VA% AND &80)=0 PRINT "present "; ELSE PRINT "not present ":GOTO 160
140 IF (VA% AND &40)>0 PRINT "(write protected, "; ELSE PRINT "(writeable, ";
150 IF (VA% AND &10)>0 PRINT "battery good)" ELSE PRINT "battery weak)"
160 PRINT:PRINT "PRESS ANY KEY TO EXIT";:G%=GET
170 CLS:END
180 DEF PROCasm
190 FOR PA%=0 TO 2 STEP 2
200 P%=MC%
210 [
220 OPT PA%
230 :
240 PUSH AF
250 IN A,(&A0)
260 LD (value),A
270 POP AF
280 RET
290 .value DEFB 0
300 ]
310 :
320 NEXT
330 ENDPROC