v08i082: chaos, Part06/10
Ken Marks x2425
balr!panasun!ken at uunet.UU.NET
Tue Aug 21 04:04:08 AEST 1990
Submitted-by: balr!panasun!ken at uunet.UU.NET (Ken Marks (x2425))
Posting-number: Volume 8, Issue 82
Archive-name: chaos/part06
#! /bin/sh
# This is a shell archive. Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file". To overwrite existing
# files, type "sh file -c". You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g.. If this archive is complete, you
# will see the following message at the end:
# "End of archive 6 (of 10)."
# Contents: TODO fonts/chaos-bold.bdf fonts/chaos-norm.bdf
# master/droneDb.c widgets/DlgShell.c
# Wrapped by ken at panasun on Mon Jul 30 14:59:49 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'TODO' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'TODO'\"
else
echo shar: Extracting \"'TODO'\" \(204 characters\)
sed "s/^X//" >'TODO' <<'END_OF_FILE'
XThings to do:
X
X- Allow the coordinates to be displayed/changed within the Settings dialogbox.
X- Add Julia set expansion.
X- Figure out someway to make mandelbrots look reasonable on monochrome
X displays.
END_OF_FILE
if test 204 -ne `wc -c <'TODO'`; then
echo shar: \"'TODO'\" unpacked with wrong size!
fi
# end of 'TODO'
fi
if test -f 'fonts/chaos-bold.bdf' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'fonts/chaos-bold.bdf'\"
else
echo shar: Extracting \"'fonts/chaos-bold.bdf'\" \(13902 characters\)
sed "s/^X//" >'fonts/chaos-bold.bdf' <<'END_OF_FILE'
XSTARTFONT 2.1
XFONT chaos-bold
XSIZE 16 75 75
XFONTBOUNDINGBOX 9 16 0 -4
XSTARTPROPERTIES 3
XFONT_ASCENT 12
XFONT_DESCENT 4
XDEFAULT_CHAR 32
XENDPROPERTIES
XCHARS 122
XSTARTCHAR H01
XENCODING 1
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 4 0 -3
XBITMAP
X08
X1C
X3E
X36
XENDCHAR
XSTARTCHAR H02
XENCODING 2
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 14 0 -3
XBITMAP
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H07
XENCODING 7
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8000
X8000
X8080
X8180
X8380
X8780
X8F80
X9F80
X9F80
X8F80
X8780
X8380
X8180
X8080
X8000
X8000
XENDCHAR
XSTARTCHAR H08
XENCODING 8
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X0080
X0080
X0080
X0080
X0080
XFC80
XFC80
XFC80
XFC80
XFC80
XFC80
X0080
X0080
X0080
X0080
X0080
XENDCHAR
XSTARTCHAR H09
XENCODING 9
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8000
X8000
X8000
X8000
X8000
X9F80
X9F80
X9F80
X9F80
X9F80
X9F80
X8000
X8000
X8000
X8000
X8000
XENDCHAR
XSTARTCHAR H0a
XENCODING 10
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X0080
X0080
X8080
XC080
XE080
XF080
XF880
XFC80
XFC80
XF880
XF080
XE080
XC080
X8080
X0080
X0080
XENDCHAR
XSTARTCHAR H0b
XENCODING 11
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 4 0 2
XBITMAP
XFF80
XFF80
XFF80
XFF80
XENDCHAR
XSTARTCHAR H0c
XENCODING 12
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 12 0 -2
XBITMAP
XFF80
XC000
XA000
X9F80
X9500
X9500
X9500
X9500
X9F80
XA000
XC000
XFF80
XENDCHAR
XSTARTCHAR H0d
XENCODING 13
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 12 0 -2
XBITMAP
XFF80
X0180
X0280
XFC80
X5480
X5480
X5480
X5480
XFC80
X0280
X0180
XFF80
XENDCHAR
XSTARTCHAR H0e
XENCODING 14
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8000
X8000
X8080
X8180
X8380
X8780
X8F80
X9F80
X8380
X8380
X8380
X8380
X8380
X8000
X8000
XFF80
XENDCHAR
XSTARTCHAR H0f
XENCODING 15
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 15 0 -4
XBITMAP
X8000
XC000
XE000
XF000
XF800
XFC00
XFE00
XF000
XF000
XF000
XF000
XF000
X0000
X0000
XFF80
XENDCHAR
XSTARTCHAR H10
XENCODING 16
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
XFF80
X8000
X8000
X8380
X8380
X8380
X8380
X8380
X9F80
X8F80
X8780
X8380
X8180
X8080
X8000
X8000
XENDCHAR
XSTARTCHAR H11
XENCODING 17
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 15 0 -3
XBITMAP
XFF80
X0000
X0000
XF000
XF000
XF000
XF000
XF000
XFE00
XFC00
XF800
XF000
XE000
XC000
X8000
XENDCHAR
XSTARTCHAR H12
XENCODING 18
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
XENDCHAR
XSTARTCHAR H13
XENCODING 19
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 2 16 0 -4
XBITMAP
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XENDCHAR
XSTARTCHAR H14
XENCODING 20
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X9F80
X9800
X9400
X9380
X9280
X9280
X9280
X9280
X9280
X9280
X9280
X9280
X9380
X9400
X9800
X9F80
XENDCHAR
XSTARTCHAR H15
XENCODING 21
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 16 0 -4
XBITMAP
XFE
X06
X0A
XF2
X52
X52
X52
X52
X52
X52
X52
X52
XF2
X0A
X06
XFE
XENDCHAR
XSTARTCHAR H16
XENCODING 22
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
XFF80
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
XFF80
XENDCHAR
XSTARTCHAR H17
XENCODING 23
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 14 0 -2
XBITMAP
XF8
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
XF8
XENDCHAR
XSTARTCHAR H18
XENCODING 24
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
XFF80
XC000
XA000
X9000
X8800
X8480
X8300
X8300
X8480
X8800
X9000
XA000
XC000
XFF80
XENDCHAR
XSTARTCHAR H19
XENCODING 25
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 14 0 -2
XBITMAP
XF8
X18
X28
X48
X88
X08
X08
X08
X08
X88
X48
X28
X18
XF8
XENDCHAR
XSTARTCHAR H1a
XENCODING 26
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
X0780
X1800
X2000
X4000
X4000
X8000
X8000
X8000
X8000
X4000
X4000
X2000
X1800
X0780
XENDCHAR
XSTARTCHAR H1b
XENCODING 27
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 12 0 -1
XBITMAP
XC0
X20
X10
X10
X08
X08
X08
X08
X10
X10
X20
XC0
XENDCHAR
XSTARTCHAR H1c
XENCODING 28
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
X0780
X1800
X2000
X4300
X4F80
X8F80
X9F80
X9F80
X8F80
X4F80
X4300
X2000
X1800
X0780
XENDCHAR
XSTARTCHAR H1d
XENCODING 29
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 12 0 -1
XBITMAP
XC0
X20
X10
X90
X88
XC8
XC8
X88
X90
X10
X20
XC0
XENDCHAR
XSTARTCHAR H1e
XENCODING 30
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 0 0 12
XBITMAP
XENDCHAR
XSTARTCHAR H1f
XENCODING 31
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 9 0 1
XBITMAP
X20
X30
X38
XFC
XFE
XFC
X38
X30
X20
XENDCHAR
XSTARTCHAR H20
XENCODING 32
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 0 0 12
XBITMAP
XENDCHAR
XSTARTCHAR H21
XENCODING 33
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 10 0 0
XBITMAP
X18
X18
X18
X18
X18
X18
X18
X00
X18
X18
XENDCHAR
XSTARTCHAR H22
XENCODING 34
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 4 0 6
XBITMAP
X36
X36
X36
X36
XENDCHAR
XSTARTCHAR H23
XENCODING 35
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 10 0 0
XBITMAP
X1B00
X1B00
X1B00
X7F80
X3600
X3600
XFF00
X6C00
X6C00
X6C00
XENDCHAR
XSTARTCHAR H24
XENCODING 36
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 12 0 -1
XBITMAP
X08
X3E
X6B
X6B
X6B
X38
X0E
X6B
X6B
X6B
X3E
X08
XENDCHAR
XSTARTCHAR H25
XENCODING 37
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X76
X96
X9C
XEC
X18
X18
X37
X39
X69
X6E
XENDCHAR
XSTARTCHAR H26
XENCODING 38
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X38
X6C
X6C
X38
X30
X7B
XDE
XCC
XDC
X77
XENDCHAR
XSTARTCHAR H27
XENCODING 39
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 4 0 6
XBITMAP
X0C
X0C
X18
X30
XENDCHAR
XSTARTCHAR H28
XENCODING 40
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -2
XBITMAP
X06
X0C
X18
X18
X30
X30
X30
X30
X30
X18
X18
X0C
X06
XENDCHAR
XSTARTCHAR H29
XENCODING 41
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -2
XBITMAP
X30
X18
X0C
X0C
X06
X06
X06
X06
X06
X0C
X0C
X18
X30
XENDCHAR
XSTARTCHAR H2a
XENCODING 42
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 2
XBITMAP
X18
X5A
X7E
X3C
X7E
X5A
X18
XENDCHAR
XSTARTCHAR H2b
XENCODING 43
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 8 0 0
XBITMAP
X18
X18
X18
XFF
XFF
X18
X18
X18
XENDCHAR
XSTARTCHAR H2c
XENCODING 44
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 5 0 -3
XBITMAP
X18
X18
X08
X10
X20
XENDCHAR
XSTARTCHAR H2d
XENCODING 45
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 2 0 3
XBITMAP
X7F
X7F
XENDCHAR
XSTARTCHAR H2e
XENCODING 46
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 2 0 0
XBITMAP
X18
X18
XENDCHAR
XSTARTCHAR H2f
XENCODING 47
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 12 0 -1
XBITMAP
X03
X06
X06
X0C
X0C
X18
X18
X30
X30
X60
X60
XC0
XENDCHAR
XSTARTCHAR H30
XENCODING 48
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X67
X67
X6B
X6B
X73
X73
X63
X3E
XENDCHAR
XSTARTCHAR H31
XENCODING 49
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X0C
X1C
X3C
X0C
X0C
X0C
X0C
X0C
X0C
X3F
XENDCHAR
XSTARTCHAR H32
XENCODING 50
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X03
X06
X0C
X18
X30
X61
X7F
XENDCHAR
XSTARTCHAR H33
XENCODING 51
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X03
X1E
X07
X03
X63
X63
X3E
XENDCHAR
XSTARTCHAR H34
XENCODING 52
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X02
X06
X0E
X1E
X36
X66
XC6
XFF
X06
X06
XENDCHAR
XSTARTCHAR H35
XENCODING 53
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7F
X60
X60
X7E
X03
X03
X03
X63
X63
X3E
XENDCHAR
XSTARTCHAR H36
XENCODING 54
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X60
X60
X7E
X63
X63
X63
X63
X3E
XENDCHAR
XSTARTCHAR H37
XENCODING 55
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7F
X43
X43
X06
X06
X0C
X0C
X18
X18
X18
XENDCHAR
XSTARTCHAR H38
XENCODING 56
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X63
X3E
X63
X63
X63
X63
X3E
XENDCHAR
XSTARTCHAR H39
XENCODING 57
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X63
X63
X3F
X03
X03
X63
X3E
XENDCHAR
XSTARTCHAR H3a
XENCODING 58
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 7 0 0
XBITMAP
X18
X18
X00
X00
X00
X18
X18
XENDCHAR
XSTARTCHAR H3b
XENCODING 59
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 10 0 -3
XBITMAP
X18
X18
X00
X00
X00
X18
X18
X08
X10
X20
XENDCHAR
XSTARTCHAR H3c
XENCODING 60
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 11 0 0
XBITMAP
X03
X06
X0C
X18
X30
X60
X30
X18
X0C
X06
X03
XENDCHAR
XSTARTCHAR H3d
XENCODING 61
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 6 0 1
XBITMAP
X7F
X7F
X00
X00
X7F
X7F
XENDCHAR
XSTARTCHAR H3e
XENCODING 62
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 11 0 0
XBITMAP
X60
X30
X18
X0C
X06
X03
X06
X0C
X18
X30
X60
XENDCHAR
XSTARTCHAR H3f
XENCODING 63
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X03
X06
X0C
X0C
X00
X0C
X0C
XENDCHAR
XSTARTCHAR H40
XENCODING 64
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X1C
X36
X63
X6F
X6B
X6B
X6E
X60
X33
X1E
XENDCHAR
XSTARTCHAR H41
XENCODING 65
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X08
X1C
X1C
X36
X36
X36
X63
X7F
X63
X63
XENDCHAR
XSTARTCHAR H42
XENCODING 66
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7C
X66
X66
X66
X7C
X66
X63
X63
X63
X7E
XENDCHAR
XSTARTCHAR H43
XENCODING 67
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X60
X60
X60
X60
X63
X63
X3E
XENDCHAR
XSTARTCHAR H44
XENCODING 68
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7C
X66
X63
X63
X63
X63
X63
X63
X66
X7C
XENDCHAR
XSTARTCHAR H45
XENCODING 69
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7F
X60
X60
X60
X7E
X60
X60
X60
X60
X7F
XENDCHAR
XSTARTCHAR H46
XENCODING 70
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7F
X60
X60
X60
X7E
X60
X60
X60
X60
X60
XENDCHAR
XSTARTCHAR H47
XENCODING 71
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X60
X60
X67
X63
X63
X67
X3D
XENDCHAR
XSTARTCHAR H48
XENCODING 72
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X63
X63
X63
X63
X7F
X63
X63
X63
X63
X63
XENDCHAR
XSTARTCHAR H49
XENCODING 73
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7E
X18
X18
X18
X18
X18
X18
X18
X18
X7E
XENDCHAR
XSTARTCHAR H4a
XENCODING 74
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X1F
X06
X06
X06
X06
X06
X06
X66
X66
X3C
XENDCHAR
XSTARTCHAR H4b
XENCODING 75
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X63
X66
X6C
X78
X7C
X6C
X66
X66
X63
X63
XENDCHAR
XSTARTCHAR H4c
XENCODING 76
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X60
X60
X60
X60
X60
X60
X60
X60
X60
X7F
XENDCHAR
XSTARTCHAR H4d
XENCODING 77
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
XC3
XC3
XE7
XE7
XFF
XDB
XDB
XC3
XC3
XC3
XENDCHAR
XSTARTCHAR H4e
XENCODING 78
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X63
X63
X73
X73
X7B
X6B
X6F
X67
X67
X63
XENDCHAR
XSTARTCHAR H4f
XENCODING 79
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X63
X63
X63
X63
X63
X63
X3E
XENDCHAR
XSTARTCHAR H50
XENCODING 80
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7E
X63
X63
X63
X63
X7E
X60
X60
X60
X60
XENDCHAR
XSTARTCHAR H51
XENCODING 81
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 13 0 -3
XBITMAP
X3E
X63
X63
X63
X63
X63
X63
X63
X63
X3E
X18
X0C
X07
XENDCHAR
XSTARTCHAR H52
XENCODING 82
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7E
X63
X63
X63
X7E
X6C
X66
X66
X63
X63
XENDCHAR
XSTARTCHAR H53
XENCODING 83
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X3E
X63
X63
X30
X1C
X06
X03
X63
X63
X3E
XENDCHAR
XSTARTCHAR H54
XENCODING 84
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
XFF
X18
X18
X18
X18
X18
X18
X18
X18
X18
XENDCHAR
XSTARTCHAR H55
XENCODING 85
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X63
X63
X63
X63
X63
X63
X63
X63
X63
X3E
XENDCHAR
XSTARTCHAR H56
XENCODING 86
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X63
X63
X63
X36
X36
X36
X1C
X1C
X08
X08
XENDCHAR
XSTARTCHAR H57
XENCODING 87
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 10 0 0
XBITMAP
XC180
XC980
XC980
XDD80
X5D00
X7700
X7700
X3600
X2200
X2200
XENDCHAR
XSTARTCHAR H58
XENCODING 88
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X63
X63
X36
X36
X1C
X1C
X36
X36
X63
X63
XENDCHAR
XSTARTCHAR H59
XENCODING 89
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
XC3
XC3
X66
X66
X3C
X18
X18
X18
X18
X18
XENDCHAR
XSTARTCHAR H5a
XENCODING 90
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7F
X03
X03
X06
X0C
X18
X30
X60
X60
X7F
XENDCHAR
XSTARTCHAR H5b
XENCODING 91
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -2
XBITMAP
X3E
X30
X30
X30
X30
X30
X30
X30
X30
X30
X30
X30
X3E
XENDCHAR
XSTARTCHAR H5c
XENCODING 92
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 12 0 -1
XBITMAP
XC0
X60
X60
X30
X30
X18
X18
X0C
X0C
X06
X06
X03
XENDCHAR
XSTARTCHAR H5d
XENCODING 93
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -2
XBITMAP
X3E
X06
X06
X06
X06
X06
X06
X06
X06
X06
X06
X06
X3E
XENDCHAR
XSTARTCHAR H5e
XENCODING 94
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 4 0 6
XBITMAP
X08
X1C
X36
X63
XENDCHAR
XSTARTCHAR H5f
XENCODING 95
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 2 0 -2
XBITMAP
XFF
XFF
XENDCHAR
XSTARTCHAR H60
XENCODING 96
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 4 0 6
XBITMAP
X30
X30
X18
X0C
XENDCHAR
XSTARTCHAR H61
XENCODING 97
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X3C
X66
X06
X3E
X66
X66
X3F
XENDCHAR
XSTARTCHAR H62
XENCODING 98
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X60
X60
X60
X6E
X73
X63
X63
X63
X73
X6E
XENDCHAR
XSTARTCHAR H63
XENCODING 99
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X3E
X63
X60
X60
X60
X63
X3E
XENDCHAR
XSTARTCHAR H64
XENCODING 100
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X03
X03
X03
X3B
X67
X63
X63
X63
X67
X3B
XENDCHAR
XSTARTCHAR H65
XENCODING 101
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X3E
X63
X63
X7F
X60
X63
X3E
XENDCHAR
XSTARTCHAR H66
XENCODING 102
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X0E
X1B
X18
X18
X7E
X18
X18
X18
X18
X18
XENDCHAR
XSTARTCHAR H67
XENCODING 103
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 -3
XBITMAP
X3B
X67
X63
X63
X63
X67
X3B
X03
X63
X3E
XENDCHAR
XSTARTCHAR H68
XENCODING 104
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X60
X60
X60
X6E
X73
X63
X63
X63
X63
X63
XENDCHAR
XSTARTCHAR H69
XENCODING 105
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 10 0 0
XBITMAP
X0C
X0C
X00
X3C
X0C
X0C
X0C
X0C
X0C
X0C
XENDCHAR
XSTARTCHAR H6a
XENCODING 106
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -3
XBITMAP
X06
X06
X00
X1E
X06
X06
X06
X06
X06
X06
X06
X66
X3C
XENDCHAR
XSTARTCHAR H6b
XENCODING 107
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X60
X60
X60
X66
X6C
X78
X78
X6C
X66
X63
XENDCHAR
XSTARTCHAR H6c
XENCODING 108
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 10 0 0
XBITMAP
X3C
X0C
X0C
X0C
X0C
X0C
X0C
X0C
X0C
X0C
XENDCHAR
XSTARTCHAR H6d
XENCODING 109
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
XB6
XDB
XDB
XDB
XDB
XDB
XDB
XENDCHAR
XSTARTCHAR H6e
XENCODING 110
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X5E
X73
X63
X63
X63
X63
X63
XENDCHAR
XSTARTCHAR H6f
XENCODING 111
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X3E
X63
X63
X63
X63
X63
X3E
XENDCHAR
XSTARTCHAR H70
XENCODING 112
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 11 0 -4
XBITMAP
X6E
X73
X63
X63
X63
X73
X6E
X60
X60
X60
X60
XENDCHAR
XSTARTCHAR H71
XENCODING 113
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 11 0 -4
XBITMAP
X3B
X67
X63
X63
X63
X67
X3B
X03
X03
X03
X03
XENDCHAR
XSTARTCHAR H72
XENCODING 114
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X6E
X7B
X60
X60
X60
X60
X60
XENDCHAR
XSTARTCHAR H73
XENCODING 115
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X3E
X63
X60
X3E
X03
X63
X3E
XENDCHAR
XSTARTCHAR H74
XENCODING 116
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X18
X18
X18
X7E
X18
X18
X18
X18
X1B
X0E
XENDCHAR
XSTARTCHAR H75
XENCODING 117
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X63
X63
X63
X63
X63
X67
X3B
XENDCHAR
XSTARTCHAR H76
XENCODING 118
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X63
X63
X36
X36
X1C
X1C
X08
XENDCHAR
XSTARTCHAR H77
XENCODING 119
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
XC3
XC3
XDB
XDB
XDB
XDB
X7E
XENDCHAR
XSTARTCHAR H78
XENCODING 120
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X66
X66
X3C
X18
X3C
X66
X66
XENDCHAR
XSTARTCHAR H79
XENCODING 121
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 11 0 -4
XBITMAP
X63
X63
X33
X36
X16
X1C
X0C
X0C
X48
X78
X30
XENDCHAR
XSTARTCHAR H7a
XENCODING 122
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X7F
X06
X0C
X18
X30
X60
X7F
XENDCHAR
XSTARTCHAR H7b
XENCODING 123
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 13 0 -2
XBITMAP
X0F
X18
X18
X18
X18
X18
X70
X18
X18
X18
X18
X18
X0F
XENDCHAR
XSTARTCHAR H7c
XENCODING 124
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 13 0 -2
XBITMAP
X18
X18
X18
X18
X18
X18
X00
X18
X18
X18
X18
X18
X18
XENDCHAR
XSTARTCHAR H7d
XENCODING 125
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 13 0 -2
XBITMAP
X78
X0C
X0C
X0C
X0C
X0C
X07
X0C
X0C
X0C
X0C
X0C
X78
XENDCHAR
XSTARTCHAR H7e
XENCODING 126
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 3 0 6
XBITMAP
X3B
X7F
X6E
XENDCHAR
XENDFONT
END_OF_FILE
if test 13902 -ne `wc -c <'fonts/chaos-bold.bdf'`; then
echo shar: \"'fonts/chaos-bold.bdf'\" unpacked with wrong size!
fi
# end of 'fonts/chaos-bold.bdf'
fi
if test -f 'fonts/chaos-norm.bdf' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'fonts/chaos-norm.bdf'\"
else
echo shar: Extracting \"'fonts/chaos-norm.bdf'\" \(13846 characters\)
sed "s/^X//" >'fonts/chaos-norm.bdf' <<'END_OF_FILE'
XSTARTFONT 2.1
XFONT chaos-norm
XSIZE 16 75 75
XFONTBOUNDINGBOX 9 16 0 -4
XSTARTPROPERTIES 3
XFONT_ASCENT 12
XFONT_DESCENT 4
XDEFAULT_CHAR 32
XENDPROPERTIES
XCHARS 122
XSTARTCHAR H01
XENCODING 1
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 4 0 -3
XBITMAP
X08
X1C
X3E
X36
XENDCHAR
XSTARTCHAR H02
XENCODING 2
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 14 0 -3
XBITMAP
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H07
XENCODING 7
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8000
X8000
X8080
X8180
X8380
X8780
X8F80
X9F80
X9F80
X8F80
X8780
X8380
X8180
X8080
X8000
X8000
XENDCHAR
XSTARTCHAR H08
XENCODING 8
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X0080
X0080
X0080
X0080
X0080
XFC80
XFC80
XFC80
XFC80
XFC80
XFC80
X0080
X0080
X0080
X0080
X0080
XENDCHAR
XSTARTCHAR H09
XENCODING 9
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8000
X8000
X8000
X8000
X8000
X9F80
X9F80
X9F80
X9F80
X9F80
X9F80
X8000
X8000
X8000
X8000
X8000
XENDCHAR
XSTARTCHAR H0a
XENCODING 10
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X0080
X0080
X8080
XC080
XE080
XF080
XF880
XFC80
XFC80
XF880
XF080
XE080
XC080
X8080
X0080
X0080
XENDCHAR
XSTARTCHAR H0b
XENCODING 11
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 4 0 2
XBITMAP
XFF80
XFF80
XFF80
XFF80
XENDCHAR
XSTARTCHAR H0c
XENCODING 12
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 12 0 -2
XBITMAP
XFF80
XC000
XA000
X9F80
X9500
X9500
X9500
X9500
X9F80
XA000
XC000
XFF80
XENDCHAR
XSTARTCHAR H0d
XENCODING 13
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 12 0 -2
XBITMAP
XFF80
X0180
X0280
XFC80
X5480
X5480
X5480
X5480
XFC80
X0280
X0180
XFF80
XENDCHAR
XSTARTCHAR H0e
XENCODING 14
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8000
X8000
X8080
X8180
X8380
X8780
X8F80
X9F80
X8380
X8380
X8380
X8380
X8380
X8000
X8000
XFF80
XENDCHAR
XSTARTCHAR H0f
XENCODING 15
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 15 0 -4
XBITMAP
X8000
XC000
XE000
XF000
XF800
XFC00
XFE00
XF000
XF000
XF000
XF000
XF000
X0000
X0000
XFF80
XENDCHAR
XSTARTCHAR H10
XENCODING 16
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
XFF80
X8000
X8000
X8380
X8380
X8380
X8380
X8380
X9F80
X8F80
X8780
X8380
X8180
X8080
X8000
X8000
XENDCHAR
XSTARTCHAR H11
XENCODING 17
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 15 0 -3
XBITMAP
XFF80
X0000
X0000
XF000
XF000
XF000
XF000
XF000
XFE00
XFC00
XF800
XF000
XE000
XC000
X8000
XENDCHAR
XSTARTCHAR H12
XENCODING 18
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
X8080
XENDCHAR
XSTARTCHAR H13
XENCODING 19
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 2 16 0 -4
XBITMAP
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XC0
XENDCHAR
XSTARTCHAR H14
XENCODING 20
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 16 0 -4
XBITMAP
X9F80
X9800
X9400
X9380
X9280
X9280
X9280
X9280
X9280
X9280
X9280
X9280
X9380
X9400
X9800
X9F80
XENDCHAR
XSTARTCHAR H15
XENCODING 21
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 16 0 -4
XBITMAP
XFE
X06
X0A
XF2
X52
X52
X52
X52
X52
X52
X52
X52
XF2
X0A
X06
XFE
XENDCHAR
XSTARTCHAR H16
XENCODING 22
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
XFF80
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
X8000
XFF80
XENDCHAR
XSTARTCHAR H17
XENCODING 23
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 14 0 -2
XBITMAP
XF8
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
X08
XF8
XENDCHAR
XSTARTCHAR H18
XENCODING 24
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
XFF80
XC000
XA000
X9000
X8800
X8480
X8300
X8300
X8480
X8800
X9000
XA000
XC000
XFF80
XENDCHAR
XSTARTCHAR H19
XENCODING 25
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 14 0 -2
XBITMAP
XF8
X18
X28
X48
X88
X08
X08
X08
X08
X88
X48
X28
X18
XF8
XENDCHAR
XSTARTCHAR H1a
XENCODING 26
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
X0780
X1800
X2000
X4000
X4000
X8000
X8000
X8000
X8000
X4000
X4000
X2000
X1800
X0780
XENDCHAR
XSTARTCHAR H1b
XENCODING 27
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 12 0 -1
XBITMAP
XC0
X20
X10
X10
X08
X08
X08
X08
X10
X10
X20
XC0
XENDCHAR
XSTARTCHAR H1c
XENCODING 28
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 14 0 -2
XBITMAP
X0780
X1800
X2000
X4300
X4F80
X8F80
X9F80
X9F80
X8F80
X4F80
X4300
X2000
X1800
X0780
XENDCHAR
XSTARTCHAR H1d
XENCODING 29
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 12 0 -1
XBITMAP
XC0
X20
X10
X90
X88
XC8
XC8
X88
X90
X10
X20
XC0
XENDCHAR
XSTARTCHAR H1e
XENCODING 30
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 0 0 12
XBITMAP
XENDCHAR
XSTARTCHAR H1f
XENCODING 31
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 9 0 1
XBITMAP
X20
X30
X38
XFC
XFE
XFC
X38
X30
X20
XENDCHAR
XSTARTCHAR H20
XENCODING 32
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 0 0 12
XBITMAP
XENDCHAR
XSTARTCHAR H21
XENCODING 33
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 10 0 0
XBITMAP
X08
X08
X08
X08
X08
X08
X08
X00
X00
X08
XENDCHAR
XSTARTCHAR H22
XENCODING 34
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 4 0 6
XBITMAP
X24
X24
X24
X24
XENDCHAR
XSTARTCHAR H23
XENCODING 35
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X12
X12
X12
X7F
X24
X24
XFE
X48
X48
X48
XENDCHAR
XSTARTCHAR H24
XENCODING 36
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 12 0 -1
XBITMAP
X08
X1C
X2A
X2A
X28
X18
X0C
X0A
X2A
X2A
X1C
X08
XENDCHAR
XSTARTCHAR H25
XENCODING 37
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X32
X4A
X4C
X34
X08
X08
X16
X19
X29
X26
XENDCHAR
XSTARTCHAR H26
XENCODING 38
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X18
X24
X24
X18
X10
X29
X46
X44
X4C
X33
XENDCHAR
XSTARTCHAR H27
XENCODING 39
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 4 0 6
XBITMAP
X08
X08
X10
X20
XENDCHAR
XSTARTCHAR H28
XENCODING 40
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 13 0 -2
XBITMAP
X04
X08
X10
X10
X20
X20
X20
X20
X20
X10
X10
X08
X04
XENDCHAR
XSTARTCHAR H29
XENCODING 41
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 13 0 -2
XBITMAP
X20
X10
X08
X08
X04
X04
X04
X04
X04
X08
X08
X10
X20
XENDCHAR
XSTARTCHAR H2a
XENCODING 42
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 6 0 3
XBITMAP
X08
X2A
X1C
X1C
X2A
X08
XENDCHAR
XSTARTCHAR H2b
XENCODING 43
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 1
XBITMAP
X08
X08
X08
X7F
X08
X08
X08
XENDCHAR
XSTARTCHAR H2c
XENCODING 44
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 5 0 -3
XBITMAP
X18
X18
X08
X10
X20
XENDCHAR
XSTARTCHAR H2d
XENCODING 45
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 1 0 4
XBITMAP
X7F
XENDCHAR
XSTARTCHAR H2e
XENCODING 46
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 2 0 0
XBITMAP
X18
X18
XENDCHAR
XSTARTCHAR H2f
XENCODING 47
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 12 0 -1
XBITMAP
X01
X02
X02
X04
X04
X08
X08
X10
X10
X20
X20
X40
XENDCHAR
XSTARTCHAR H30
XENCODING 48
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X46
X4A
X52
X62
X42
X42
X3C
XENDCHAR
XSTARTCHAR H31
XENCODING 49
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X08
X18
X28
X08
X08
X08
X08
X08
X08
X3E
XENDCHAR
XSTARTCHAR H32
XENCODING 50
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X02
X04
X08
X10
X20
X40
X7E
XENDCHAR
XSTARTCHAR H33
XENCODING 51
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X02
X1C
X02
X02
X42
X42
X3C
XENDCHAR
XSTARTCHAR H34
XENCODING 52
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X04
X0C
X14
X24
X44
X84
XFE
X04
X04
X04
XENDCHAR
XSTARTCHAR H35
XENCODING 53
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7E
X40
X40
X40
X7C
X02
X02
X42
X42
X3C
XENDCHAR
XSTARTCHAR H36
XENCODING 54
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X40
X40
X7C
X42
X42
X42
X42
X3C
XENDCHAR
XSTARTCHAR H37
XENCODING 55
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7E
X42
X02
X04
X04
X08
X08
X10
X10
X10
XENDCHAR
XSTARTCHAR H38
XENCODING 56
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X42
X3C
X42
X42
X42
X42
X3C
XENDCHAR
XSTARTCHAR H39
XENCODING 57
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X42
X42
X3E
X02
X02
X42
X3C
XENDCHAR
XSTARTCHAR H3a
XENCODING 58
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 7 0 0
XBITMAP
X18
X18
X00
X00
X00
X18
X18
XENDCHAR
XSTARTCHAR H3b
XENCODING 59
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 10 0 -3
XBITMAP
X18
X18
X00
X00
X00
X18
X18
X08
X10
X20
XENDCHAR
XSTARTCHAR H3c
XENCODING 60
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 11 0 0
XBITMAP
X02
X04
X08
X10
X20
X40
X20
X10
X08
X04
X02
XENDCHAR
XSTARTCHAR H3d
XENCODING 61
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 5 0 2
XBITMAP
X7F
X00
X00
X00
X7F
XENDCHAR
XSTARTCHAR H3e
XENCODING 62
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 11 0 0
XBITMAP
X40
X20
X10
X08
X04
X02
X04
X08
X10
X20
X40
XENDCHAR
XSTARTCHAR H3f
XENCODING 63
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X02
X04
X08
X08
X00
X00
X08
XENDCHAR
XSTARTCHAR H40
XENCODING 64
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X18
X24
X42
X4E
X52
X52
X4C
X40
X22
X1C
XENDCHAR
XSTARTCHAR H41
XENCODING 65
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X18
X18
X18
X24
X24
X24
X42
X7E
X42
X42
XENDCHAR
XSTARTCHAR H42
XENCODING 66
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X78
X44
X44
X44
X78
X44
X42
X42
X42
X7C
XENDCHAR
XSTARTCHAR H43
XENCODING 67
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X40
X40
X40
X40
X42
X42
X3C
XENDCHAR
XSTARTCHAR H44
XENCODING 68
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X78
X44
X42
X42
X42
X42
X42
X42
X44
X78
XENDCHAR
XSTARTCHAR H45
XENCODING 69
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7E
X40
X40
X40
X7C
X40
X40
X40
X40
X7E
XENDCHAR
XSTARTCHAR H46
XENCODING 70
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7E
X40
X40
X40
X7C
X40
X40
X40
X40
X40
XENDCHAR
XSTARTCHAR H47
XENCODING 71
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X40
X40
X4E
X42
X42
X46
X3A
XENDCHAR
XSTARTCHAR H48
XENCODING 72
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X42
X42
X42
X42
X7E
X42
X42
X42
X42
X42
XENDCHAR
XSTARTCHAR H49
XENCODING 73
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3E
X08
X08
X08
X08
X08
X08
X08
X08
X3E
XENDCHAR
XSTARTCHAR H4a
XENCODING 74
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X1E
X04
X04
X04
X04
X04
X04
X44
X44
X38
XENDCHAR
XSTARTCHAR H4b
XENCODING 75
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X42
X44
X48
X50
X68
X48
X44
X44
X42
X42
XENDCHAR
XSTARTCHAR H4c
XENCODING 76
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X40
X40
X40
X40
X40
X40
X40
X40
X40
X7E
XENDCHAR
XSTARTCHAR H4d
XENCODING 77
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X41
X41
X63
X63
X55
X55
X49
X49
X41
X41
XENDCHAR
XSTARTCHAR H4e
XENCODING 78
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X42
X62
X62
X52
X52
X4A
X4A
X46
X46
X42
XENDCHAR
XSTARTCHAR H4f
XENCODING 79
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X42
X42
X42
X42
X42
X42
X3C
XENDCHAR
XSTARTCHAR H50
XENCODING 80
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7C
X42
X42
X42
X42
X7C
X40
X40
X40
X40
XENDCHAR
XSTARTCHAR H51
XENCODING 81
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -3
XBITMAP
X3C
X42
X42
X42
X42
X42
X42
X42
X42
X3C
X10
X08
X06
XENDCHAR
XSTARTCHAR H52
XENCODING 82
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7C
X42
X42
X42
X7C
X48
X44
X44
X42
X42
XENDCHAR
XSTARTCHAR H53
XENCODING 83
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X3C
X42
X42
X20
X18
X04
X02
X42
X42
X3C
XENDCHAR
XSTARTCHAR H54
XENCODING 84
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X7F
X08
X08
X08
X08
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H55
XENCODING 85
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X42
X42
X42
X42
X42
X42
X42
X42
X42
X3C
XENDCHAR
XSTARTCHAR H56
XENCODING 86
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X42
X42
X42
X42
X24
X24
X24
X18
X18
X18
XENDCHAR
XSTARTCHAR H57
XENCODING 87
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X41
X41
X41
X49
X2A
X2A
X2A
X14
X14
X14
XENDCHAR
XSTARTCHAR H58
XENCODING 88
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X42
X42
X24
X24
X18
X18
X24
X24
X42
X42
XENDCHAR
XSTARTCHAR H59
XENCODING 89
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 10 0 0
XBITMAP
X41
X41
X22
X22
X14
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H5a
XENCODING 90
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X7E
X02
X02
X04
X08
X10
X20
X40
X40
X7E
XENDCHAR
XSTARTCHAR H5b
XENCODING 91
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 13 0 -2
XBITMAP
X3C
X20
X20
X20
X20
X20
X20
X20
X20
X20
X20
X20
X3C
XENDCHAR
XSTARTCHAR H5c
XENCODING 92
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 12 0 -1
XBITMAP
X40
X20
X20
X10
X10
X08
X08
X04
X04
X02
X02
X01
XENDCHAR
XSTARTCHAR H5d
XENCODING 93
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 13 0 -2
XBITMAP
X3C
X04
X04
X04
X04
X04
X04
X04
X04
X04
X04
X04
X3C
XENDCHAR
XSTARTCHAR H5e
XENCODING 94
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 3 0 6
XBITMAP
X18
X24
X42
XENDCHAR
XSTARTCHAR H5f
XENCODING 95
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 9 1 0 -1
XBITMAP
XFF80
XENDCHAR
XSTARTCHAR H60
XENCODING 96
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 4 0 6
XBITMAP
X20
X20
X10
X08
XENDCHAR
XSTARTCHAR H61
XENCODING 97
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X38
X44
X04
X3C
X44
X44
X3A
XENDCHAR
XSTARTCHAR H62
XENCODING 98
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X40
X40
X40
X5C
X62
X42
X42
X42
X62
X5C
XENDCHAR
XSTARTCHAR H63
XENCODING 99
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X3C
X42
X40
X40
X40
X42
X3C
XENDCHAR
XSTARTCHAR H64
XENCODING 100
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X02
X02
X02
X3A
X46
X42
X42
X42
X46
X3A
XENDCHAR
XSTARTCHAR H65
XENCODING 101
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X3C
X42
X42
X7E
X40
X42
X3C
XENDCHAR
XSTARTCHAR H66
XENCODING 102
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X0C
X12
X10
X10
X7C
X10
X10
X10
X10
X10
XENDCHAR
XSTARTCHAR H67
XENCODING 103
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 -3
XBITMAP
X3A
X46
X42
X42
X42
X46
X3A
X02
X42
X3C
XENDCHAR
XSTARTCHAR H68
XENCODING 104
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X40
X40
X40
X5C
X62
X42
X42
X42
X42
X42
XENDCHAR
XSTARTCHAR H69
XENCODING 105
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 10 0 0
XBITMAP
X08
X08
X00
X38
X08
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H6a
XENCODING 106
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 6 13 0 -3
XBITMAP
X04
X04
X00
X1C
X04
X04
X04
X04
X04
X04
X04
X44
X38
XENDCHAR
XSTARTCHAR H6b
XENCODING 107
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X40
X40
X40
X44
X48
X50
X70
X48
X44
X42
XENDCHAR
XSTARTCHAR H6c
XENCODING 108
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 10 0 0
XBITMAP
X38
X08
X08
X08
X08
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H6d
XENCODING 109
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X76
X49
X49
X49
X49
X49
X49
XENDCHAR
XSTARTCHAR H6e
XENCODING 110
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X5C
X62
X42
X42
X42
X42
X42
XENDCHAR
XSTARTCHAR H6f
XENCODING 111
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X3C
X42
X42
X42
X42
X42
X3C
XENDCHAR
XSTARTCHAR H70
XENCODING 112
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 11 0 -4
XBITMAP
X5C
X62
X42
X42
X42
X62
X5C
X40
X40
X40
X40
XENDCHAR
XSTARTCHAR H71
XENCODING 113
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 11 0 -4
XBITMAP
X3A
X46
X42
X42
X42
X46
X3A
X02
X02
X02
X02
XENDCHAR
XSTARTCHAR H72
XENCODING 114
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X5C
X62
X40
X40
X40
X40
X40
XENDCHAR
XSTARTCHAR H73
XENCODING 115
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X3C
X42
X40
X3C
X02
X42
X3C
XENDCHAR
XSTARTCHAR H74
XENCODING 116
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 10 0 0
XBITMAP
X10
X10
X10
X7C
X10
X10
X10
X10
X12
X0C
XENDCHAR
XSTARTCHAR H75
XENCODING 117
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X42
X42
X42
X42
X42
X46
X3A
XENDCHAR
XSTARTCHAR H76
XENCODING 118
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X42
X42
X42
X24
X24
X18
X18
XENDCHAR
XSTARTCHAR H77
XENCODING 119
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 8 7 0 0
XBITMAP
X41
X41
X49
X49
X49
X49
X36
XENDCHAR
XSTARTCHAR H78
XENCODING 120
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X42
X42
X24
X18
X24
X42
X42
XENDCHAR
XSTARTCHAR H79
XENCODING 121
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 11 0 -4
XBITMAP
X42
X42
X22
X24
X14
X14
X08
X08
X10
X50
X20
XENDCHAR
XSTARTCHAR H7a
XENCODING 122
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 7 0 0
XBITMAP
X7E
X04
X08
X10
X20
X40
X7E
XENDCHAR
XSTARTCHAR H7b
XENCODING 123
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -2
XBITMAP
X0E
X10
X10
X10
X10
X10
X60
X10
X10
X10
X10
X10
X0E
XENDCHAR
XSTARTCHAR H7c
XENCODING 124
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 5 13 0 -2
XBITMAP
X08
X08
X08
X08
X08
X08
X00
X08
X08
X08
X08
X08
X08
XENDCHAR
XSTARTCHAR H7d
XENCODING 125
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 13 0 -2
XBITMAP
X70
X08
X08
X08
X08
X08
X06
X08
X08
X08
X08
X08
X70
XENDCHAR
XSTARTCHAR H7e
XENCODING 126
XSWIDTH 562 0
XDWIDTH 9 0
XBBX 7 3 0 6
XBITMAP
X32
X5A
X4C
XENDCHAR
XENDFONT
END_OF_FILE
if test 13846 -ne `wc -c <'fonts/chaos-norm.bdf'`; then
echo shar: \"'fonts/chaos-norm.bdf'\" unpacked with wrong size!
fi
# end of 'fonts/chaos-norm.bdf'
fi
if test -f 'master/droneDb.c' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'master/droneDb.c'\"
else
echo shar: Extracting \"'master/droneDb.c'\" \(13511 characters\)
sed "s/^X//" >'master/droneDb.c' <<'END_OF_FILE'
X/*
X * Copyright (c) Ken W. Marks 1989, 1990.
X */
X
X#include <stdio.h>
X#include <signal.h>
X#include <ctype.h>
X#include <X11/Intrinsic.h>
X#include <X11/StringDefs.h>
X#include <X11/Xaw/Form.h>
X#include <Chaos.h>
X#include <LocalDefs.h>
X#include <Ipc.h>
X#include <DlgShell.h>
X#include <Push.h>
X#include <Compound.h>
X
X#define HOSTS_TOGGLE widgets[1]
X#define KILL_A_DRONE widgets[2]
X#define KILL_ALL_DRONES widgets[3]
X#define SPAWN_DRONES widgets[4]
X#define DISMISS widgets[0]
X
X
X#define NUM_CONTROLS (unsigned) 5
X#define NUM_LABELS (unsigned) 0
X
Xstatic void DronePushActivate();
Xstatic void DroneToggleActivate();
X
Xstatic Widget form, widgets[NUM_CONTROLS + NUM_LABELS];
Xstatic ToggleItem *host_toggle;
X
Xstatic XtCallbackRec push_callbacks[] = {
X {DronePushActivate, NULL},
X {NULL, NULL},
X};
X
Xstatic XtCallbackRec toggle_callbacks[] = {
X {DroneToggleActivate, NULL},
X {NULL, NULL},
X};
X
Xstatic Arg PopupArgs[] = {
X {XtNborderWidth, (XtArgVal) 3},
X};
X
Xstatic Arg PushArgs[] = {
X {XtNfromHoriz, (XtArgVal) NULL},
X {XtNfromVert, (XtArgVal) NULL},
X {XtNhorizDistance, (XtArgVal) 10},
X {XtNvertDistance, (XtArgVal) 10},
X {XtNlabel, (XtArgVal) NULL},
X {XtNdialogbox, (XtArgVal) NULL},
X {XtNcallback, (XtArgVal) push_callbacks},
X {XtNresizable, (XtArgVal) False},
X};
X
Xstatic Arg ToggleArgs[] = {
X {XtNfromHoriz, (XtArgVal) NULL},
X {XtNfromVert, (XtArgVal) NULL},
X {XtNhorizDistance, (XtArgVal) 10},
X {XtNvertDistance, (XtArgVal) 10},
X {XtNtoggleItems, (XtArgVal) NULL},
X {XtNdialogbox, (XtArgVal) NULL},
X {XtNresizable, (XtArgVal) False},
X {XtNborderWidth, (XtArgVal) 0},
X {XtNcallback, (XtArgVal) toggle_callbacks},
X {XtNbuttonType, (XtArgVal) ToggleButton},
X};
X
Xtypedef struct _DroneWindowStruct
X{
X Window window;
X struct _HostStruct *back;
X struct _DroneWindowStruct *next;
X struct _DroneWindowStruct *prev;
X struct _DroneWindowStruct *thread_next;
X struct _DroneWindowStruct *thread_prev;
X} DroneWindowStruct;
X
Xtypedef struct _HostStruct
X{
X char *name;
X int num_drones;
X DroneWindowStruct *drone_list;
X int index;
X struct _HostStruct *next;
X struct _HostStruct *prev;
X} HostStruct;
X
Xstatic DroneWindowStruct *drone_window_list = NULL;
Xstatic HostStruct *host_list = NULL;
Xstatic HostStruct **host_index = NULL;
Xstatic int num_hosts = 0;
Xstatic char hostname[32]; /* max hostname is 31 chars + NULL */
X
X
Xstatic void DroneInsertWindow(host, window)
XHostStruct *host;
XWindow window;
X{
X DroneWindowStruct *drone_window;
X DroneWindowStruct *insert;
X
X#ifdef DEBUG
X dprintf("Inserting drone (window=0x%x) for host '%s'\n", window,
X host->name);
X#endif
X
X host->num_drones++;
X
X drone_window = (DroneWindowStruct *) malloc(sizeof(DroneWindowStruct));
X drone_window->window = window;
X drone_window->back = host;
X drone_window->next = host->drone_list;
X drone_window->prev = NULL;
X if (host->drone_list != NULL)
X host->drone_list->prev = drone_window;
X host->drone_list = drone_window;
X
X /* Note: The next/prev pointers connect the windows for a host while the
X * thread pointers are used to tie all window structures together. */
X
X /* Simple insertion sort */
X if (drone_window_list == NULL || window < drone_window_list->window)
X {
X /* Special case for inserting at head */
X drone_window->thread_next = drone_window_list;
X drone_window->thread_prev = NULL;
X if (drone_window_list != NULL)
X drone_window_list->thread_prev = drone_window;
X drone_window_list = drone_window;
X }
X else
X {
X insert = drone_window_list;
X while (insert->thread_next != NULL)
X {
X if (window < insert->thread_next->window)
X break;
X insert = insert->thread_next;
X }
X drone_window->thread_next = insert->thread_next;
X insert->thread_next = drone_window;
X if (drone_window->thread_next != NULL)
X drone_window->thread_next->thread_prev = drone_window;
X drone_window->thread_prev = insert;
X }
X}
X
X
Xstatic DroneWindowStruct *DroneFindWindow(window)
XWindow window;
X{
X DroneWindowStruct *drone_window;
X
X for (drone_window = drone_window_list; drone_window != NULL;
X drone_window = drone_window->thread_next)
X {
X /* Did we find it? */
X if (drone_window->window == window)
X break;
X
X /* or did we pass by? */
X if (drone_window->window > window)
X return (NULL);
X }
X return (drone_window);
X}
X
X
Xstatic void DroneInsertHost(name)
Xchar *name;
X{
X HostStruct *host;
X HostStruct *insert;
X
X ++num_hosts;
X
X host = (HostStruct *) malloc(sizeof(HostStruct));
X host->name = name;
X host->num_drones = 0;
X host->drone_list = NULL;
X
X /* Simple insertion sort */
X if (host_list == NULL || strcmp(name, host_list->name) < 0)
X {
X /* Special case for inserting at head */
X host->next = host_list;
X host->prev = NULL;
X host_list = host;
X }
X else
X {
X insert = host_list;
X while (insert->next != NULL)
X {
X if (strcmp(name, insert->next->name) < 0)
X break;
X insert = insert->next;
X }
X host->next = insert->next;
X insert->next = host;
X if (host->next != NULL)
X host->next->prev = host;
X host->prev = insert;
X }
X}
X
X
Xstatic HostStruct *DroneFindHost(name)
Xchar *name;
X{
X HostStruct *host;
X int result;
X
X for (host = host_list; host != NULL; host = host->next)
X {
X result = strcmp(host->name, name);
X
X /* Did we find it? */
X if (result == 0)
X break;
X
X /* or did we pass by? */
X if (result > 0)
X return (NULL);
X }
X return (host);
X}
X
X
Xstatic void DroneInitializeHosts()
X{
X int ii;
X char *name;
X HostStruct *host;
X extern char *hosts;
X extern char *strtok();
X
X name = strtok(hosts, " \t");
X (void) gethostname(hostname, 32);
X
X while (name != NULL)
X {
X DroneInsertHost(name);
X name = strtok((char *) NULL, " \t");
X }
X
X host = DroneFindHost(hostname);
X
X if (host == NULL)
X /* Add our hostname to the list */
X DroneInsertHost(hostname);
X
X host_index = (HostStruct **) malloc((unsigned) (sizeof(HostStruct *) *
X (num_hosts + 1)));
X
X host_toggle = (ToggleItem *) malloc((unsigned) (sizeof(ToggleItem) *
X (num_hosts + 2)));
X host_toggle[num_hosts + 1].label = NULL;
X host_toggle[num_hosts + 1].state = NULL;
X
X host_toggle[0].label = " All Hosts";
X host_toggle[0].state = False;
X
X for (host = host_list, ii = 1; host != NULL; host = host->next, ++ii)
X {
X host_index[ii] = host;
X host->index = ii;
X host_toggle[ii].label = (String) malloc(37); /* max hostname + 6 */
X (void) sprintf(host_toggle[ii].label, " (0) %s", host->name);
X host_toggle[ii].state = False;
X }
X}
X
X
Xstatic void DroneSpawn(name)
Xchar *name;
X{
X extern Widget top_level;
X char *display_name = DisplayString(XtDisplay(top_level));
X char host_display_name[64];
X Boolean exec_local_drone = True;
X char *strchr();
X extern char *drone_path;
X
X if (strcmp(name, hostname) != 0)
X {
X exec_local_drone = False;
X
X /* Cheap and sleazy way of constructing hostname:display:screen from
X * unix:display:screen */
X (void) sprintf(host_display_name, "%s%s", hostname,
X strchr(display_name, ':'));
X }
X
X if (vfork() == 0)
X {
X if (exec_local_drone)
X execlp(drone_path, "drone", "-display", display_name, (char *) 0);
X else
X execlp("rsh", "rsh", name, drone_path, "drone", "-display",
X host_display_name, (char *) 0);
X
X eprintf("Could not exec drone process!\n");
X _exit(1);
X }
X}
X
X
Xstatic void DroneTerminate(host, zap_all)
XHostStruct *host;
XBoolean zap_all;
X{
X TerminateRequest req;
X DroneWindowStruct *drone_window;
X
X if (host->num_drones == 0)
X return;
X
X req.byte_order = 0x11223344;
X req.type = TERMINATE_REQUEST;
X
X drone_window = host->drone_list;
X
X if (zap_all)
X while (drone_window != NULL)
X {
X if (SendMsg(drone_window->window,
X (unsigned) sizeof(TerminateRequest), (char *) &req) == False)
X eprintf("Error sending TerminateRequest to drone 0x%x\n",
X drone_window->window);
X
X drone_window = drone_window->next;
X }
X else if (SendMsg(drone_window->window, (unsigned) sizeof(TerminateRequest),
X (char *) &req) == False)
X eprintf("Error sending TerminateRequest to drone 0x%x\n",
X drone_window->window);
X}
X
X
X/*ARGSUSED*/
Xstatic void DronePushActivate(widget, client_data, call_data)
XWidget widget;
Xcaddr_t client_data;
Xcaddr_t call_data;
X{
X extern Widget drone_dialogbox;
X int ii;
X
X if (widget == DISMISS)
X DialogPopdown(drone_dialogbox);
X else
X for (ii = 1; ii <= num_hosts; ++ii)
X if (host_toggle[ii].state == True)
X if (widget == SPAWN_DRONES)
X DroneSpawn(host_index[ii]->name);
X else if (widget == KILL_A_DRONE)
X DroneTerminate(host_index[ii], False);
X else if (widget == KILL_ALL_DRONES)
X DroneTerminate(host_index[ii], True);
X}
X
X
X/*ARGSUSED*/
Xstatic void DroneToggleActivate(widget, client_data, call_data)
XWidget widget;
Xcaddr_t client_data;
Xcaddr_t call_data;
X{
X int item = (int) call_data;
X Boolean new_state;
X int ii;
X
X if (item == 0)
X {
X /* "All Hosts" toggled */
X new_state = !host_toggle[0].state;
X host_toggle[0].state = new_state;
X
X /* Change all hosts to agree with "All Hosts" item */
X for (ii = 1; ii <= num_hosts; ++ii)
X {
X ToggleChangeState(HOSTS_TOGGLE, (unsigned int) ii, new_state);
X host_toggle[ii].state = new_state;
X }
X }
X else
X {
X /* Keep our notion of the current states up to date */
X host_toggle[item].state = !host_toggle[item].state;
X }
X}
X
X
Xvoid DroneRegister(window, name)
XWindow window;
Xchar *name;
X{
X HostStruct *host = DroneFindHost(name);
X char new_label[37];
X extern void CleanupAndDie();
X
X if (host == NULL)
X {
X /* A drone has been started on a host we didn't know about */
X eprintf("Drone initiated from host '%s' which is not a recognized host\n");
X CleanupAndDie();
X }
X
X DroneInsertWindow(host, window);
X
X /* Change the label in the dialogbox to reflect the new count */
X if (host->num_drones > 9)
X (void) sprintf(new_label, "(%d) %s", host->num_drones, host->name);
X else
X (void) sprintf(new_label, " (%d) %s", host->num_drones, host->name);
X
X (void) CompoundChangeLabel(HOSTS_TOGGLE, (unsigned int) host->index,
X new_label);
X}
X
X
Xvoid DroneUnregister(window)
XWindow window;
X{
X DroneWindowStruct *drone_window;
X HostStruct *host;
X char new_label[37];
X
X drone_window = DroneFindWindow(window);
X host = drone_window->back;
X
X /* Disconnect the drone window structure from the host chain */
X if (drone_window == host->drone_list)
X {
X host->drone_list = drone_window->next;
X if (host->drone_list != NULL)
X host->drone_list->prev = NULL;
X }
X else
X {
X if (drone_window->next != NULL)
X drone_window->next->prev = drone_window->prev;
X drone_window->prev->next = drone_window->next;
X }
X
X /* Disconnect the drone window structure from the drone window chain */
X if (drone_window == drone_window_list)
X {
X drone_window_list = drone_window->thread_next;
X if (drone_window_list != NULL)
X drone_window_list->thread_prev = NULL;
X }
X else
X {
X if (drone_window->thread_next != NULL)
X drone_window->thread_next->thread_prev = drone_window->thread_prev;
X drone_window->thread_prev->thread_next = drone_window->thread_next;
X }
X
X free((char *) drone_window);
X
X host->num_drones--;
X
X /* Change the label in the dialogbox to reflect the new count */
X if (host->num_drones > 9)
X (void) sprintf(new_label, "(%d) %s", host->num_drones, host->name);
X else
X (void) sprintf(new_label, " (%d) %s", host->num_drones, host->name);
X
X (void) CompoundChangeLabel(HOSTS_TOGGLE, (unsigned int) host->index,
X new_label);
X}
X
X
XWidget DroneCreateDialogbox(parent)
XWidget parent;
X{
X Widget popup;
X
X popup = XtCreatePopupShell("drone_dialogbox_popup",
X dialogShellWidgetClass, parent, PopupArgs, XtNumber(PopupArgs));
X
X form = XtCreateManagedWidget("drone_dialogbox_form", formWidgetClass,
X popup, (ArgList) NULL, (Cardinal) 0);
X
X DroneInitializeHosts();
X
X ToggleArgs[0].value = (XtArgVal) NULL;
X ToggleArgs[1].value = (XtArgVal) NULL;
X ToggleArgs[4].value = (XtArgVal) host_toggle;
X ToggleArgs[5].value = (XtArgVal) popup;
X HOSTS_TOGGLE = XtCreateManagedWidget("hosts_toggle", compoundWidgetClass,
X form, ToggleArgs, XtNumber(ToggleArgs));
X
X PushArgs[0].value = (XtArgVal) NULL;
X PushArgs[1].value = (XtArgVal) HOSTS_TOGGLE;
X PushArgs[4].value = (XtArgVal) "Kill Drones";
X PushArgs[5].value = (XtArgVal) popup;
X KILL_A_DRONE = XtCreateManagedWidget("kill_a_drone_push", pushWidgetClass,
X form, PushArgs, XtNumber(PushArgs));
X
X PushArgs[0].value = (XtArgVal) NULL;
X PushArgs[1].value = (XtArgVal) KILL_A_DRONE;
X PushArgs[4].value = (XtArgVal) "Kill All Drones";
X PushArgs[5].value = (XtArgVal) popup;
X KILL_ALL_DRONES = XtCreateManagedWidget("kill_all_drones_push",
X pushWidgetClass, form, PushArgs, XtNumber(PushArgs));
X
X PushArgs[0].value = (XtArgVal) KILL_ALL_DRONES;
X PushArgs[1].value = (XtArgVal) HOSTS_TOGGLE;
X PushArgs[4].value = (XtArgVal) "Spawn Drones";
X PushArgs[5].value = (XtArgVal) popup;
X SPAWN_DRONES = XtCreateManagedWidget("spawn_drones_push", pushWidgetClass,
X form, PushArgs, XtNumber(PushArgs));
X
X PushArgs[0].value = (XtArgVal) KILL_ALL_DRONES;
X PushArgs[1].value = (XtArgVal) SPAWN_DRONES;
X PushArgs[4].value = (XtArgVal) "Dismiss";
X PushArgs[5].value = (XtArgVal) popup;
X DISMISS = XtCreateManagedWidget("dismiss_push", pushWidgetClass,
X form, PushArgs, XtNumber(PushArgs));
X
X DialogSetFocusOrder(popup, widgets, NUM_CONTROLS);
X
X return (popup);
X}
END_OF_FILE
if test 13511 -ne `wc -c <'master/droneDb.c'`; then
echo shar: \"'master/droneDb.c'\" unpacked with wrong size!
fi
# end of 'master/droneDb.c'
fi
if test -f 'widgets/DlgShell.c' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'widgets/DlgShell.c'\"
else
echo shar: Extracting \"'widgets/DlgShell.c'\" \(10003 characters\)
sed "s/^X//" >'widgets/DlgShell.c' <<'END_OF_FILE'
X/*
X * Copyright (c) Ken W. Marks 1989, 1990.
X */
X
X#include <stdio.h>
X#include <X11/IntrinsicP.h>
X#include <X11/cursorfont.h>
X#include <X11/StringDefs.h>
X#include <X11/Shell.h>
X#include <X11/ShellP.h>
X#include <Chaos.h>
X#include <LocalDefs.h>
X#include <DlgShellP.h>
X
X/* For debugging purposes, set allow_grabs to False. This disallows
X * pointer and keyboard grabs so that dialogbox code may be debugged
X * (breakpointed) without the possibility of interrupting the client
X * during a grab (rendering the workstation about as useful as a large
X * paperweight or perhaps a small end table). */
X
Xstatic allow_grabs = True;
X
X#define FOCUSED_WIDGET(w) \
X ((w)->dialogshell.controls[(w)->dialogshell.current_focus])
X
X#define GRAB_FOCUS(dpy, w) \
X XUngrabKeyboard((dpy), CurrentTime); \
X XGrabKeyboard((dpy), XtWindow(FOCUSED_WIDGET(w)), False, \
X GrabModeAsync, GrabModeAsync, CurrentTime)
X
X#define TOP_DIALOGBOX (dialog_stack[num_used - 1])
X#define BOX_VISIBLE (num_used > 0)
X
X#define UnspecifiedPixmap 2
X#define ALLOC_COUNT 10
X
Xstatic Pixmap defaultPixmap = NULL;
Xstatic Widget *dialog_stack = NULL;
Xstatic int num_allocated = 0;
Xstatic int num_used = 0;
X
X
X#define offset(field) XtOffset(DialogShellWidget, dialogshell.field)
X#define goffset(field) XtOffset(Widget,core.field)
X
Xstatic XtResource resources[] = {
X {XtNborderWidth, XtCBorderWidth, XtRDimension, sizeof(Dimension),
X goffset(border_width), XtRImmediate, (caddr_t) 4},
X {XtNunfocusedBorder, XtCUnfocused, XtRPixmap, sizeof(Pixmap),
X offset(unfocused_border), XtRPixmap, (caddr_t) & defaultPixmap},
X {XtNcursor, XtCCursor, XtRCursor, sizeof(Cursor),
X offset(cursor), XtRString, "arrow"},
X};
X
X#undef offset
X#undef goffset
X
Xstatic void DialogInitialize(), DialogIgnore();
X
Xstatic XtActionsRec dialog_actions[] =
X{
X /* {name, procedure}, */
X {"ignore", DialogIgnore},
X};
X
Xstatic char dialog_translations[] =
X"<Key>: ignore()\n\
X <BtnDown>: ignore()\n\
X";
X
X
X#define superclass (&overrideShellClassRec)
X
XDialogShellClassRec dialogShellClassRec = {
X {
X /* core fields */
X /* superclass */ (WidgetClass) superclass,
X /* class_name */ "DialogShell",
X /* widget_size */ sizeof(DialogShellRec),
X /* class_initialize */ NULL,
X /* class_part_initialize */ NULL,
X /* class_inited */ FALSE,
X /* initialize */ DialogInitialize,
X /* initialize_hook */ NULL,
X /* realize */ XtInheritRealize,
X /* actions */ dialog_actions,
X /* num_actions */ XtNumber(dialog_actions),
X /* resources */ resources,
X /* num_resources */ XtNumber(resources),
X /* xrm_class */ NULLQUARK,
X /* compress_motion */ FALSE,
X /* compress_exposure */ TRUE,
X /* compress_enterleave */ FALSE,
X /* visible_interest */ FALSE,
X /* destroy */ NULL,
X /* resize */ XtInheritResize,
X /* expose */ NULL,
X /* set_values */ NULL,
X /* set_values_hook */ NULL,
X /* set_values_almost */ XtInheritSetValuesAlmost,
X /* get_values_hook */ NULL,
X /* accept_focus */ NULL,
X /* version */ XtVersion,
X /* callback_private */ NULL,
X /* tm_table */ dialog_translations,
X /* query_geometry */ NULL,
X /* display_accelerator */ NULL,
X /* extension */ NULL
X },
X {
X /* composite fields */
X /* geometry_manager */ XtInheritGeometryManager,
X /* change_managed */ XtInheritChangeManaged,
X /* insert_child */ XtInheritInsertChild,
X /* delete_child */ XtInheritDeleteChild,
X /* extension */ NULL
X },
X {
X /* shell fields */
X /* empty */ NULL
X },
X {
X /* override shell fields */
X /* empty */ NULL
X },
X {
X /* dialogshell fields */
X /* empty */ NULL
X }
X};
X
XWidgetClass dialogShellWidgetClass = (WidgetClass) & dialogShellClassRec;
X
X
X/************************************************************/
X/******************** Private Procedures ********************/
X/************************************************************/
X
X
X/* ARGSUSED */
Xstatic void DialogInitialize(request, new)
XWidget request;
XWidget new;
X{
X DialogShellWidget w = (DialogShellWidget) new;
X
X if (w->core.border_pixmap != UnspecifiedPixmap)
X XtFree(w->core.border_pixmap);
X
X w->core.border_pixmap = XmuCreateStippledPixmap(XtScreen(w),
X w->core.border_pixel, w->core.background_pixel, w->core.depth);
X
X w->dialogshell.controls = NULL;
X w->dialogshell.num_controls = 0;
X w->dialogshell.current_focus = 0;
X}
X
X
Xstatic void DialogSetFocusedBorder(widget)
XWidget widget;
X{
X if (XtIsRealized(widget))
X {
X XSetWindowBorder(XtDisplay(widget), XtWindow(widget),
X widget->core.border_pixel);
X }
X}
X
X
Xstatic void DialogSetUnfocusedBorder(widget)
XWidget widget;
X{
X if (XtIsRealized(widget))
X {
X XSetWindowBorderPixmap(XtDisplay(widget), XtWindow(widget),
X widget->core.border_pixmap);
X }
X}
X
X
Xstatic void DialogCenterBox(widget)
XWidget widget;
X{
X Screen *screen = XtScreen(widget);
X Position x, y;
X
X x = (WidthOfScreen(screen) - widget->core.width) / 2;
X y = (HeightOfScreen(screen) - widget->core.height) / 2;
X
X XtMoveWidget(widget, x, y);
X}
X
X
Xstatic void DialogPushStack(widget)
XWidget widget;
X{
X extern char *malloc(), *realloc();
X
X if (num_used == num_allocated)
X {
X num_allocated += ALLOC_COUNT;
X if (num_allocated == ALLOC_COUNT)
X dialog_stack = (Widget *) malloc(num_allocated * sizeof(widget));
X else
X dialog_stack = (Widget *) realloc(dialog_stack, num_allocated *
X sizeof(widget));
X }
X dialog_stack[num_used++] = widget;
X}
X
X
Xstatic void DialogPopStack()
X{
X if (--num_used < 0)
X {
X (void) fprintf(stderr, "DialogPopStack: stack empty!\n");
X abort();
X }
X}
X
X
X/***********************************************************/
X/******************** Action Procedures ********************/
X/***********************************************************/
X
X
X/* ARGSUSED */
Xstatic void DialogIgnore(w, event, params, num_params)
XWidget w; /* unused */
XXEvent *event; /* unused */
XString *params; /* unused */
XCardinal *num_params; /* unused */
X{
X}
X
X
X/***********************************************************/
X/******************** Public Procedures ********************/
X/***********************************************************/
X
X
Xvoid DialogPopup(widget)
XWidget widget;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X Display *dpy = XtDisplay(widget);
X Window window;
X XSetWindowAttributes attributes;
X extern Colormap colormap;
X extern Widget top_level;
X
X XtRealizeWidget(widget);
X if (BOX_VISIBLE)
X DialogSetUnfocusedBorder(TOP_DIALOGBOX);
X DialogSetFocusedBorder(widget);
X DialogCenterBox(widget);
X window = XtWindow(widget);
X attributes.colormap = colormap;
X XChangeWindowAttributes(dpy, window, CWColormap, &attributes);
X if (allow_grabs)
X {
X DialogChangeGrab(widget, w->dialogshell.cursor);
X XtAddGrab(widget, True, False);
X }
X XMapRaised(dpy, window);
X XtSetKeyboardFocus(top_level, widget);
X DialogSetFirstFocus(widget);
X DialogPushStack(widget);
X}
X
X
Xvoid DialogPopdown(widget)
XWidget widget;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X Display *dpy = XtDisplay(widget);
X extern Widget top_level, canvas;
X
X DialogPopStack();
X
X if (allow_grabs)
X XtRemoveGrab(widget);
X
X if (BOX_VISIBLE)
X {
X if (allow_grabs)
X /* We should probably use the cursor from TOP_DIALOGBOX */
X DialogChangeGrab(TOP_DIALOGBOX, w->dialogshell.cursor);
X
X XtUnmapWidget(widget);
X DialogSetFocusedBorder(TOP_DIALOGBOX);
X DialogSetFirstFocus(TOP_DIALOGBOX);
X XtSetKeyboardFocus(top_level, TOP_DIALOGBOX);
X }
X else
X {
X XUngrabPointer(dpy, CurrentTime);
X XUngrabKeyboard(dpy, CurrentTime);
X XtUnmapWidget(widget);
X XtSetKeyboardFocus(top_level, canvas);
X }
X}
X
X
Xvoid DialogSetFocusOrder(widget, controls, num_controls)
XWidget widget;
XWidget *controls;
XCardinal num_controls;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X
X if (w->dialogshell.num_controls != 0 && w->dialogshell.controls != NULL)
X free(w->dialogshell.controls);
X
X w->dialogshell.controls = (Widget *) COPY(controls, num_controls *
X sizeof(Widget));
X w->dialogshell.num_controls = num_controls;
X}
X
X
Xvoid DialogSetFirstFocus(widget)
XWidget widget;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X
X w->dialogshell.current_focus = 0;
X
X if (allow_grabs)
X GRAB_FOCUS(XtDisplay(w), w);
X}
X
X
Xvoid DialogSetNewFocus(widget, new_focus_widget)
XWidget widget;
XWidget new_focus_widget;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X Cardinal ii;
X
X for (ii = 0; ii < w->dialogshell.num_controls; ++ii)
X if (w->dialogshell.controls[ii] == new_focus_widget)
X {
X if (w->dialogshell.current_focus != ii)
X {
X w->dialogshell.current_focus = ii;
X
X if (allow_grabs)
X GRAB_FOCUS(XtDisplay(w), w);
X }
X return;
X }
X fprintf(stderr, "DialogSetNewFocus: widget 0x%x not found\n",
X new_focus_widget);
X abort();
X}
X
X
Xvoid DialogSetPrevFocus(widget)
XWidget widget;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X
X if (--(w->dialogshell.current_focus) < 0)
X w->dialogshell.current_focus = w->dialogshell.num_controls - 1;
X
X if (allow_grabs)
X GRAB_FOCUS(XtDisplay(w), w);
X}
X
X
Xvoid DialogSetNextFocus(widget)
XWidget widget;
X{
X DialogShellWidget w = (DialogShellWidget) widget;
X
X if (++(w->dialogshell.current_focus) == w->dialogshell.num_controls)
X w->dialogshell.current_focus = 0;
X
X if (allow_grabs)
X GRAB_FOCUS(XtDisplay(w), w);
X}
X
Xvoid DialogChangeGrab(widget, cursor)
XWidget widget;
XCursor cursor;
X{
X Display *dpy = XtDisplay(widget);
X extern Widget top_level;
X
X if (allow_grabs == False)
X return;
X
X /* first grab on the top level window */
X XGrabPointer(dpy, XtWindow(top_level), True, 0, GrabModeAsync,
X GrabModeAsync, None, cursor, CurrentTime);
X
X /* then transfer the grab to the dialogbox */
X XGrabPointer(dpy, XtWindow(widget), True, ButtonPressMask |
X ButtonReleaseMask | ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
X GrabModeAsync, GrabModeAsync, None, cursor, CurrentTime);
X}
END_OF_FILE
if test 10003 -ne `wc -c <'widgets/DlgShell.c'`; then
echo shar: \"'widgets/DlgShell.c'\" unpacked with wrong size!
fi
# end of 'widgets/DlgShell.c'
fi
echo shar: End of archive 6 \(of 10\).
cp /dev/null ark6isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 ; do
if test ! -f ark${I}isdone ; then
MISSING="${MISSING} ${I}"
fi
done
if test "${MISSING}" = "" ; then
echo You have unpacked all 10 archives.
rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
echo You still need to unpack the following archives:
echo " " ${MISSING}
fi
## End of shell archive.
exit 0
dan
----------------------------------------------------
O'Reilly && Associates argv at sun.com / argv at ora.com
Opinions expressed reflect those of the author only.
More information about the Comp.sources.x
mailing list