石原 博の覚書

電子工作に関する日々の覚書を記載します

MulticompでFUZIX

2022-08-27 23:19:37 | 日記

Multicomp Cycllne II-C で先日flex, Nitros9を動かしたが、それだけではもったいない。同sdでFUZIXがあるので試してみた。


電源を入れるとCamelForthが起動する。そこでFUZIXと入力すると起動。



知らなかったが、調べてみるとfuzixは結構有名。8bitCPU Z80, 6809, 6502 などで動くunix likeなOS。
(バンクでのメモリ拡張は必要だが)


unix likeというだけあって、良く使うコマンドは大概使える。


# ls -al /bin
drwxr-xr-x   2 root     root         3072 Nov 24 08:44 .
drwxrwxrwx  11 root     root          512 Nov 24 08:44 ..
-rwxr-xr-x   1 root     root         7511 Nov 24 08:44 banner
-rwxr-xr-x   1 root     root          573 Nov 24 08:44 basename
-rwxr-xr-x   1 root     root         9259 Nov 24 08:44 bd
-rwxr-xr-x   1 root     root        19511 Nov 24 08:44 cal
-rwxr-xr-x   1 root     root         1484 Nov 24 08:44 cat
-rwxr-xr-x   1 root     root         3315 Nov 24 08:44 chgrp
-rwxr-xr-x   1 root     root         3941 Nov 24 08:44 chmod
-rwxr-xr-x   1 root     root         3345 Nov 24 08:44 chown
-rwxr-xr-x   1 root     root         9135 Nov 24 08:44 cksum
-rwxr-xr-x   1 root     root         6252 Nov 24 08:44 cmp
-rwxr-xr-x   1 root     root         2349 Nov 24 08:44 cp
-rwxr-xr-x   1 root     root        11341 Nov 24 08:44 cut
-rwxr-xr-x   1 root     root        11144 Nov 24 08:44 date
-rwxr-xr-x   1 root     root        15982 Nov 24 08:44 dd
-rwxr-xr-x   1 root     root         3937 Nov 24 08:44 decomp16
-rwxr-xr-x   1 root     root        11246 Nov 24 08:44 df
-rwxr-xr-x   1 root     root          480 Nov 24 08:44 dirname
-rwxr-xr-x   1 root     root        25505 Nov 24 08:44 dosread
-rwxr-xr-x   1 root     root        11509 Nov 24 08:44 du
-rwxr-xr-x   1 root     root         1841 Nov 24 08:44 echo
-rwxr-xr-x   1 root     root        16605 Nov 24 08:44 ed
-rwxr-xr-x   1 root     root        10096 Nov 24 08:44 env
-rwxr-xr-x   1 root     root        13335 Nov 24 08:44 factor
-rwxr-xr-x   1 root     root          203 Nov 24 08:44 false
-rwxr-xr-x   1 root     root        15683 Nov 24 08:44 fdisk
-rwxr-xr-x   1 root     root        10900 Nov 24 08:44 fgrep
-rwxr-xr-x   1 root     root        22727 Nov 24 08:44 fsck
-rwxr-xr-x   1 root     root        14591 Nov 24 08:44 grep
-rwxr-xr-x   1 root     root         3172 Nov 24 08:44 groups
-rwxr-xr-x   1 root     root         2807 Nov 24 08:44 head
-rwxr-xr-x   1 root     root         9427 Nov 24 08:44 id
-rwxr-xr-x   1 root     root         2311 Nov 24 08:44 kbdrate
-rwxr-xr-x   1 root     root         2432 Nov 24 08:44 kill
-rwxr-xr-x   3 root     root        29969 Nov 24 08:44 levee
-rwxr-xr-x   1 root     root        30035 Nov 24 08:44 levee-ansi
-rwxr-xr-x   3 root     root        29969 Nov 24 08:44 levee-vt52
-rwxr-xr-x   1 root     root        14789 Nov 24 08:44 ll
-rwxr-xr-x   1 root     root         1940 Nov 24 08:44 ln
-rwxr-xr-x   1 root     root         1962 Nov 24 08:44 logname
-rwxr-xr-x   1 root     root        21722 Nov 24 08:44 ls
-rwxr-xr-x   1 root     root        20498 Nov 24 08:44 man
-rwxr-xr-x   1 root     root         1748 Nov 24 08:44 mkdir
-rwxr-xr-x   1 root     root          471 Nov 24 08:44 mkfifo
-rwxr-xr-x   1 root     root        13440 Nov 24 08:44 mkfs
-rwxr-xr-x   1 root     root         2705 Nov 24 08:44 mknod
-rwxr-xr-x   1 root     root        10060 Nov 24 08:44 mode
-rwxr-xr-x   1 root     root         9666 Nov 24 08:44 more
-rwxr-xr-x   1 root     root        10768 Nov 24 08:44 mount
-rwxr-xr-x   1 root     root         2431 Nov 24 08:44 mv
-rwxr-xr-x   1 root     root        11860 Nov 24 08:44 od
-rwxr-xr-x   1 root     root         3267 Nov 24 08:44 pagesize
-rwxr-xr-x   1 root     root        14575 Nov 24 08:44 passwd
-rwxr-xr-x   1 root     root          533 Nov 24 08:44 printenv
-rwxr-xr-x   1 root     root         2322 Nov 24 08:44 prtroot
-rwxr-xr-x   1 root     root        11905 Nov 24 08:44 ps
-rwxr-xr-x   1 root     root         2088 Nov 24 08:44 pwd
-rwxr-xr-x   1 root     root         1436 Nov 24 08:44 reboot
-rwxr-xr-x   1 root     root         1514 Nov 24 08:44 rm
-rwxr-xr-x   1 root     root         1738 Nov 24 08:44 rmdir
-rwxr-xr-x   1 root     root        21560 Nov 24 08:44 sed
-rwxr-xr-x   1 root     root        22001 Nov 24 08:44 sh
-rwxr-xr-x   1 root     root         7562 Nov 24 08:44 sleep
-rwxr-xr-x   1 root     root        11058 Nov 24 08:44 sort
-rwxr-xr-x   1 root     root         7831 Nov 24 08:44 ssh
-rwxr-xr-x   1 root     root        20530 Nov 24 08:44 stty
-rwxr-xr-x   1 root     root        12074 Nov 24 08:44 su
-rwxr-xr-x   1 root     root         1314 Nov 24 08:44 sum
-rwxr-xr-x   1 root     root          213 Nov 24 08:44 sync
-rwxr-xr-x   1 root     root        12873 Nov 24 08:44 tail
-rwxr-xr-x   1 root     root        16257 Nov 24 08:44 tar
-rwxr-xr-x   1 root     root          897 Nov 24 08:44 tee
-rwxr-xr-x   1 root     root         1550 Nov 24 08:44 telinit
-rwxr-xr-x   1 root     root        13729 Nov 24 08:44 termcap
-rwxr-xr-x   1 root     root        12461 Nov 24 08:44 tget
-rwxr-xr-x   1 root     root         7922 Nov 24 08:44 touch
-rwxr-xr-x   1 root     root         1565 Nov 24 08:44 tr
-rwxr-xr-x   1 root     root          204 Nov 24 08:44 true
-rwxr-xr-x   1 root     root         6697 Nov 24 08:44 ue
-rwxr-xr-x   1 root     root        10714 Nov 24 08:44 umount
-rwxr-xr-x   1 root     root         2502 Nov 24 08:44 uname
-rwxr-xr-x   1 root     root        11223 Nov 24 08:44 uniq
-rwxr-xr-x   1 root     root        15556 Nov 24 08:44 uptime
-rwxr-xr-x   1 root     root        14966 Nov 24 08:44 uud
-rwxr-xr-x   1 root     root        11214 Nov 24 08:44 uue
-rwxr-xr-x   3 root     root        29969 Nov 24 08:44 vi
-rwxr-xr-x   1 root     root        10305 Nov 24 08:44 wc
-rwxr-xr-x   1 root     root         8671 Nov 24 08:44 which
-rwxr-xr-x   1 root     root        14549 Nov 24 08:44 who
-rwxr-xr-x   1 root     root         1963 Nov 24 08:44 whoami
-rwxr-xr-x   1 root     root        10270 Nov 24 08:44 write
-rwxr-xr-x   1 root     root        10838 Nov 24 08:44 xargs
-rwxr-xr-x   1 root     root          297 Nov 24 08:44 yes
# ls -al /usr/bin
drwxr-xr-x   2 root     root         3072 Nov 24 08:44 .
drwxr-xr-x   9 root     root          512 Nov 24 08:44 ..
-rwxr-xr-x   2 root     root         5425 Nov 24 08:44 [
-rwxr-xr-x   1 root     root        19454 Nov 24 08:44 ac
-rwxr-xr-x   1 root     root         1858 Nov 24 08:44 accton
-rwxr-xr-x   1 root     root        18705 Nov 24 08:44 adv01
-rwxr-xr-x   1 root     root        18440 Nov 24 08:44 adv02
-rwxr-xr-x   1 root     root        18449 Nov 24 08:44 adv03
-rwxr-xr-x   1 root     root        18357 Nov 24 08:44 adv04
-rwxr-xr-x   1 root     root        18368 Nov 24 08:44 adv05
-rwxr-xr-x   1 root     root        18289 Nov 24 08:44 adv06
-rwxr-xr-x   1 root     root        18225 Nov 24 08:44 adv07
-rwxr-xr-x   1 root     root        18174 Nov 24 08:44 adv08
-rwxr-xr-x   1 root     root        17979 Nov 24 08:44 adv09
-rwxr-xr-x   1 root     root        17948 Nov 24 08:44 adv10
-rwxr-xr-x   1 root     root        18278 Nov 24 08:44 adv11
-rwxr-xr-x   1 root     root        18295 Nov 24 08:44 adv12
-rwxr-xr-x   1 root     root        17936 Nov 24 08:44 adv13
-rwxr-xr-x   1 root     root        18244 Nov 24 08:44 adv14a
-rwxr-xr-x   1 root     root        17651 Nov 24 08:44 adv14b
-rwxr-xr-x   1 root     root        23672 Nov 24 08:44 advent
-rw-r--r--   1 root     root        46458 Nov 24 08:44 advent.db
-rwxr-xr-x   1 root     root        15967 Nov 24 08:44 almanac
-rwxr-xr-x   1 root     root        14854 Nov 24 08:44 arithmetic
-rwxr-xr-x   1 root     root        24432 Nov 24 08:44 as09
-rwxr-xr-x   1 root     root        20193 Nov 24 08:44 at
-rwxr-xr-x   1 root     root        19056 Nov 24 08:44 atrun
-rwxr-xr-x   1 root     root        19472 Nov 24 08:44 backgammon
-rwxr-xr-x   1 root     root         1516 Nov 24 08:44 bcpl
-rwxr-xr-x   1 root     root        21083 Nov 24 08:44 calendar
-rwxr-xr-x   1 root     root         6291 Nov 24 08:44 col
-rwxr-xr-x   1 root     root         9757 Nov 24 08:44 comm
-rw-r--r--   1 root     root        25554 Nov 24 08:44 cpp
-rwxr-xr-x   1 root     root        15215 Nov 24 08:44 cron
-rwxr-xr-x   1 root     root         7008 Nov 24 08:44 crypt
-rwxr-xr-x   1 root     root        35933 Nov 24 08:44 dc
-rwxr-xr-x   1 root     root        12571 Nov 24 08:44 deroff
-rwxr-xr-x   1 root     root        16502 Nov 24 08:44 diff
-rwxr-xr-x   1 root     root        12787 Nov 24 08:44 diff3
-rwxr-xr-x   1 root     root        12966 Nov 24 08:44 diffh
-rwxr-xr-x   1 root     root         1618 Nov 24 08:44 dw
-rwxr-xr-x   1 root     root        16082 Nov 24 08:44 dwdate
-rwxr-xr-x   1 root     root         7745 Nov 24 08:44 dwgetty
-rwxr-xr-x   1 root     root        11939 Nov 24 08:44 dwterm
-rwxr-xr-x   1 root     root        16864 Nov 24 08:44 expr
-rwxr-xr-x   1 root     root        20226 Nov 24 08:44 fforth
-rwxr-xr-x   1 root     root        23770 Nov 24 08:44 find
-rwxr-xr-x   1 root     root        13124 Nov 24 08:44 fish
-rwxr-xr-x   1 root     root         2509 Nov 24 08:44 fortune
-rwxr-xr-x   1 root     root         9264 Nov 24 08:44 fortune-gen
-rwxr-xr-x   1 root     root        12688 Nov 24 08:44 icint
-rwxr-xr-x   1 root     root        14061 Nov 24 08:44 icintv
-rwxr-xr-x   1 root     root        13163 Nov 24 08:44 join
-rwxr-xr-x   1 root     root        12672 Nov 24 08:44 ld09
-rwxr-xr-x   1 root     root        10357 Nov 24 08:44 look
-rwxr-xr-x   1 root     root        24179 Nov 24 08:44 m4
-rwxr-xr-x   1 root     root         1979 Nov 24 08:44 makekey
-rwxr-xr-x   1 root     root         9752 Nov 24 08:44 mesg
-rwxr-xr-x   1 root     root        10108 Nov 24 08:44 moo
-rwxr-xr-x   1 root     root        16627 Nov 24 08:44 myst01
-rwxr-xr-x   1 root     root        16708 Nov 24 08:44 myst02
-rwxr-xr-x   1 root     root        16784 Nov 24 08:44 myst03
-rwxr-xr-x   1 root     root        17568 Nov 24 08:44 myst04
-rwxr-xr-x   1 root     root        18259 Nov 24 08:44 myst05
-rwxr-xr-x   1 root     root        16643 Nov 24 08:44 myst06
-rwxr-xr-x   1 root     root        16591 Nov 24 08:44 myst07
-rwxr-xr-x   1 root     root        18650 Nov 24 08:44 myst08
-rwxr-xr-x   1 root     root        18053 Nov 24 08:44 myst09
-rwxr-xr-x   1 root     root        17004 Nov 24 08:44 myst10
-rwxr-xr-x   1 root     root        18186 Nov 24 08:44 myst11
-rwxr-xr-x   1 root     root        12566 Nov 24 08:44 newgrp
-rwxr-xr-x   1 root     root        18418 Nov 24 08:44 picol
-rwxr-xr-x   2 root     root        24824 Nov 24 08:44 pilot
-rwxr-xr-x   1 root     root        20423 Nov 24 08:44 pr
-rwxr-xr-x   1 root     root        15141 Nov 24 08:44 ptx
-rwxr-xr-x   1 root     root        13429 Nov 24 08:44 qrun
-rwxr-xr-x   1 root     root         8530 Nov 24 08:44 rev
-rwxr-xr-x   2 root     root        24824 Nov 24 08:44 rpilot
-rwxr-xr-x   1 root     root         4815 Nov 24 08:44 split
-rwxr-xr-x   1 root     root         8879 Nov 24 08:44 sum
-rwxr-xr-x   2 root     root         5425 Nov 24 08:44 test
-rwxr-xr-x   1 root     root         8477 Nov 24 08:44 time
-rwxr-xr-x   1 root     root        11943 Nov 24 08:44 tsort
-rwxr-xr-x   1 root     root         9821 Nov 24 08:44 ttt
-rwxr-xr-x   1 root     root        21034 Nov 24 08:44 units
-rwxr-xr-x   1 root     root         9514 Nov 24 08:44 wall
-rwxr-xr-x   1 root     root        14113 Nov 24 08:44 wump

8bitCPUでこれだけ動くのは素晴らしいが、unixに似ているのだが微妙な違いが引っかかる。(例えば日付の合わせ方がわからない。説明が見つからない。manでも登録されていない)。これなら母艦のlinuxで良いじゃないという気になってしまった。


他に気になったのは、バックスペースがうまく動かないところ。
stty -a では以下のように表示されるが、baud rateは9600ということはないし微妙...


# stty -a
speed 9600 baud; cs8 -parenb -parodd hupcl -cstopb cread -clocal
-ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -ixon
-ixoff -ixany
opost onlcr
isig icanon iexten echo echoe echok -echonl -noflsh
eof = ^D eol = <undef> erase = ^H intr = ^C kill = ^U quit = ^\ susp = ^Z
start = ^Q stop = ^S flush = ^O min = 4 time = 0
0 rows 0 columns 0 ypixels 0 xpixels

github上にソースがあり読めば色々おもしろそうだが、各種platformに対応しておりややこしい(github上にsetdateのソースはあるが、このSDには入ってないし)。もう少し調べないと。