[comp.sources.amiga] v89i090: plplot - scientific plotting library, Part05/07

page%rishathra@Sun.COM (Bob Page) (04/25/89)

Submitted-by: amr@dukee.egr.duke.edu (Tony Richardson)
Posting-number: Volume 89, Issue 90
Archive-name: applications/plplot

# This is a shell archive.
# Remove anything above and including the cut line.
# Then run the rest of the file through 'sh'.
# Unpacked files will be owned by you and have default permissions.
#----cut here-----cut here-----cut here-----cut here----#
#!/bin/sh
# shar: SHell ARchive
# Run the following text through 'sh' to create:
#	font10.c
#	font11.c
#	genlin.c
#	global.c
#	icnvrt.c
#	impress.c
#	laserjetii.c
#	lmkfile
#	movphy.c
#	movwor.c
#	pl3cut.c
#	plabv.c
#	pladv.c
# This is archive 5 of a 7-part kit.
# This archive created: Thu Apr 20 13:47:03 1989
echo "extracting font10.c"
sed 's/^X//' << \SHAR_EOF > font10.c
X      short int subbuffer225[100] = {
X       8511, 8508, 8378, 7992, 7735,   64, 8256, 8383, 8380, 8250,
X       7992,   64, 7735, 7990, 8116, 8113, 7982, 7724, 7467, 7340,
X       7342, 7473, 7860, 8246, 8761, 9148,   64, 7735, 7862, 7988,
X       7985, 7854, 7724,    0,  -16, 7116, 8256,   64,    0,  -16,
X       7116, 7748,   64,    0,  -16, 7116, 7240,   64,    0,  -16,
X       7116, 6986, 8140, 7755, 7496, 7363, 7360, 7483, 7736, 8119,
X       8375, 8760, 9019, 9152, 9155, 9032, 8779, 8396, 8140,   64,
X       7883, 7624, 7491, 7488, 7611, 7864,   64, 7737, 8120, 8376,
X       8761,   64, 8632, 8891, 9024, 9027, 8904, 8651,   64, 8778,
X       8395, 8139, 7754,    0,  -16, 7116, 6986, 7752, 8009, 8396
X      };
X      short int subbuffer226[100] = {
X       8375,   64, 7752, 7751, 8008, 8266, 8247, 8375,    0,  -16,
X       7116, 6986, 7495, 7496, 7626, 7755, 8012, 8524, 8779, 8906,
X       9032, 9030, 8900, 8641, 7479,   64, 7495, 7623, 7624, 7754,
X       8011, 8523, 8778, 8904, 8902, 8772, 8513, 7351,   64, 7480,
X       9144, 9143,   64, 7351, 9143,    0,  -16, 7116, 6986, 7628,
X       9036, 8131,   64, 7628, 7627, 8907,   64, 8908, 8003,   64,
X       8132, 8388, 8771, 9025, 9150, 9149, 9018, 8760, 8375, 7991,
X       7608, 7481, 7355, 7483,   64, 8003, 8387, 8770, 9023,   64,
X       8515, 8897, 9022, 9021, 8890, 8504,   64, 9020, 8761, 8376,
X       7992, 7609, 7483,   64, 7864, 7482,    0,  -16, 7116, 6986
X      };
X      short int subbuffer227[100] = {
X       8649, 8631, 8759,   64, 8780, 8759,   64, 8780, 7356, 9276,
X         64, 8649, 7484,   64, 7485, 9277, 9276,    0,  -16, 7116,
X       6986, 7628, 7491,   64, 7755, 7620,   64, 7628, 8908, 8907,
X         64, 7755, 8907,   64, 7620, 8005, 8389, 8772, 9026, 9151,
X       9149, 9018, 8760, 8375, 7991, 7608, 7481, 7355, 7483,   64,
X       7491, 7619, 7876, 8388, 8771, 9024,   64, 8516, 8898, 9023,
X       9021, 8890, 8504,   64, 9020, 8761, 8376, 7992, 7609, 7483,
X         64, 7864, 7482,    0,  -16, 7116, 6986, 8779, 8905, 9033,
X       8907, 8524, 8268, 7883, 7624, 7491, 7486, 7610, 7864, 8247,
X       8375, 8760, 9018, 9149, 9150, 9025, 8771, 8388, 8260, 7875
X      };
X      short int subbuffer228[100] = {
X       7617,   64, 8906, 8523, 8267, 7882,   64, 8011, 7752, 7619,
X       7614, 7738, 8120,   64, 7612, 7865, 8248, 8376, 8761, 9020,
X         64, 8504, 8890, 9021, 9022, 8897, 8515,   64, 9023, 8770,
X       8387, 8259, 7874, 7615,   64, 8131, 7745, 7614,    0,  -16,
X       7116, 6986, 7372, 9164, 7863,   64, 7372, 7371, 9035,   64,
X       9036, 7735, 7863,    0,  -16, 7116, 6986, 8012, 7627, 7497,
X       7495, 7621, 7748, 8003, 8514, 8769, 8896, 9022, 9019, 8889,
X       8504, 7992, 7609, 7483, 7486, 7616, 7745, 8002, 8515, 8772,
X       8901, 9031, 9033, 8907, 8524, 8012,   64, 7755, 7625, 7623,
X       7749, 8004, 8515, 8770, 9024, 9150, 9147, 9017, 8888, 8503
X      };
X      short int subbuffer229[100] = {
X       7991, 7608, 7481, 7355, 7358, 7488, 7746, 8003, 8516, 8773,
X       8903, 8905, 8779,   64, 8906, 8523, 8011, 7626,   64, 7482,
X       7864,   64, 8632, 9018,    0,  -16, 7116, 6986, 8898, 8640,
X       8255, 8127, 7744, 7490, 7365, 7366, 7497, 7755, 8140, 8268,
X       8651, 8905, 9029, 9024, 8891, 8632, 8247, 7991, 7608, 7482,
X       7610, 7736,   64, 8901, 8770, 8384,   64, 8900, 8641, 8256,
X       8128, 7745, 7492,   64, 8000, 7618, 7493, 7494, 7625, 8011,
X         64, 7495, 7754, 8139, 8267, 8650, 8903,   64, 8395, 8777,
X       8901, 8896, 8763, 8504,   64, 8633, 8248, 7992, 7609,    0,
X        -16, 7116, 7622, 8250, 8121, 8120, 8247, 8375, 8504, 8505
X      };
X      short int subbuffer230[100] = {
X       8378, 8250,   64, 8249, 8248, 8376, 8377, 8249,    0,  -16,
X       7116, 7622, 8504, 8375, 8247, 8120, 8121, 8250, 8378, 8505,
X       8502, 8372, 8115,   64, 8249, 8248, 8376, 8377, 8249,   64,
X       8375, 8502,   64, 8504, 8372,    0,  -16, 7116, 7622, 8261,
X       8132, 8131, 8258, 8386, 8515, 8516, 8389, 8261,   64, 8260,
X       8259, 8387, 8388, 8260,   64, 8250, 8121, 8120, 8247, 8375,
X       8504, 8505, 8378, 8250,   64, 8249, 8248, 8376, 8377, 8249,
X          0,  -16, 7116, 7622, 8261, 8132, 8131, 8258, 8386, 8515,
X       8516, 8389, 8261,   64, 8260, 8259, 8387, 8388, 8260,   64,
X       8504, 8375, 8247, 8120, 8121, 8250, 8378, 8505, 8502, 8372
X      };
X      short int subbuffer231[100] = {
X       8115,   64, 8249, 8248, 8376, 8377, 8249,   64, 8375, 8502,
X         64, 8504, 8372,    0,  -16, 7116, 7622, 8268, 8254, 8382,
X         64, 8268, 8396, 8382,   64, 8250, 8121, 8120, 8247, 8375,
X       8504, 8505, 8378, 8250,   64, 8249, 8248, 8376, 8377, 8249,
X          0,  -16, 7116, 7114, 7495, 7496, 7626, 7755, 8140, 8524,
X       8907, 9034, 9160, 9158, 9028, 8899, 8642, 8257,   64, 7495,
X       7623, 7624, 7754, 8139, 8523, 8906, 9032, 9030, 8900, 8643,
X       8258,   64, 7625, 8011,   64, 8651, 9033,   64, 9029, 8514,
X         64, 8258, 8254, 8382, 8386,   64, 8250, 8121, 8120, 8247,
X       8375, 8504, 8505, 8378, 8250,   64, 8249, 8248, 8376, 8377
X      };
X      short int subbuffer232[100] = {
X       8249,    0,  -16, 7116, 7622, 8524, 8267, 8137, 8134, 8261,
X       8389, 8518, 8519, 8392, 8264, 8135,   64, 8263, 8262, 8390,
X       8391, 8263,   64, 8267, 8135,   64, 8137, 8264,    0,  -16,
X       7116, 7622, 8522, 8393, 8265, 8138, 8139, 8268, 8396, 8523,
X       8520, 8390, 8133,   64, 8267, 8266, 8394, 8395, 8267,   64,
X       8393, 8520,   64, 8522, 8390,    0,  -16, 7116, 6733, 9541,
X       9285, 9028, 8898, 8636, 8506, 8377, 8120, 7608, 7353, 7227,
X       7229, 7359, 7488, 8131, 8389, 8519, 8521, 8395, 8140, 8012,
X       7755, 7625, 7623, 7748, 8001, 8635, 9016, 9271, 9527,   64,
X       9541, 9540, 9284, 9027,   64, 9156, 9026, 8764, 8634, 8376
X      };
X      short int subbuffer233[100] = {
X       8119, 7607, 7352, 7225, 7099, 7101, 7231, 7489, 8132, 8261,
X       8391, 8393, 8267,   64, 8394, 8139, 8011, 7754,   64, 7883,
X       7753, 7751, 7876, 8129, 8763, 9017, 9272, 9528, 9527,    0,
X        -16, 7116, 7114, 8272, 8243, 8371,   64, 8272, 8400, 8371,
X         64, 8905, 9161, 8907, 8524, 8140, 7755, 7497, 7495, 7621,
X       7748, 8768, 8895, 9021, 9019, 8889, 8504, 8120, 7865, 7738,
X         64, 8905, 8778, 8523, 8139, 7754, 7625, 7623, 7749, 8769,
X       9023, 9149, 9147, 9017, 8888, 8503, 8119, 7736, 7482, 7738,
X         64, 9018, 8632,    0,  -16, 7116, 6860, 9424, 7088, 7216,
X         64, 9424, 9552, 7216,    0,  -16, 7116, 7367, 8656, 8398
X      };
X      short int subbuffer234[100] = {
X       8139, 7879, 7746, 7742, 7865, 8117, 8370, 8624, 8752,   64,
X       8656, 8784, 8526, 8267, 8007, 7874, 7870, 7993, 8245, 8498,
X       8752,    0,  -16, 7116, 7367, 7760, 8014, 8267, 8519, 8642,
X       8638, 8505, 8245, 7986, 7728, 7856,   64, 7760, 7888, 8142,
X       8395, 8647, 8770, 8766, 8633, 8373, 8114, 7856,    0,  -16,
X       7116, 7240, 8268, 8139, 8385, 8256,   64, 8268, 8256,   64,
X       8268, 8395, 8129, 8256,   64, 7625, 7753, 8771, 8899,   64,
X       7625, 8899,   64, 7625, 7624, 8900, 8899,   64, 8905, 8777,
X       7747, 7619,   64, 8905, 7619,   64, 8905, 8904, 7620, 7619,
X          0,  -16, 7116, 6733, 7233, 9409, 9408,   64, 7233, 7232
X      };
X      short int subbuffer235[100] = {
X       9408,    0,  -16, 7116, 6733, 8265, 8248, 8376,   64, 8265,
X       8393, 8376,   64, 7233, 9409, 9408,   64, 7233, 7232, 9408,
X          0,  -16, 7116, 6733, 7237, 9413, 9412,   64, 7237, 7236,
X       9412,   64, 7229, 9405, 9404,   64, 7229, 7228, 9404,    0,
X        -16, 7116, 7749, 8396, 8267, 8261,   64, 8395, 8261,   64,
X       8396, 8523, 8261,    0,  -16, 7116, 7113, 7756, 7627, 7621,
X         64, 7755, 7621,   64, 7756, 7883, 7621,   64, 8908, 8779,
X       8773,   64, 8907, 8773,   64, 8908, 9035, 8773,    0,  -16,
X       7116, 7367, 8140, 7883, 7753, 7751, 7877, 8132, 8388, 8645,
X       8775, 8777, 8651, 8396, 8140,   64, 8140, 7753, 7877, 8388
X      };
X      short int subbuffer236[100] = {
X       8775, 8651, 8140,   64, 8396, 7883, 7751, 8132, 8645, 8777,
X       8396,    0,  -16, 7116, 8256,   64,    0,  -16, 7116, 7748,
X         64,    0,  -16, 7116, 7240,   64,    0,  -16, 7116, 6987,
X       8524, 8139, 7881, 7622, 7491, 7359, 7356, 7481, 7608, 7863,
X       8119, 8504, 8762, 9021, 9152, 9284, 9287, 9162, 9035, 8780,
X       8524,   64, 8524, 8267, 8009, 7750, 7619, 7487, 7484, 7609,
X       7863,   64, 8119, 8376, 8634, 8893, 9024, 9156, 9159, 9034,
X       8780,    0,  -16, 7116, 6987, 8520, 7863,   64, 8780, 7991,
X         64, 8780, 8393, 8007, 7750,   64, 8649, 8135, 7750,    0,
X        -16, 7116, 6987, 7880, 8007, 7878, 7751, 7752, 7882, 8011
X      };
X      short int subbuffer237[100] = {
X       8396, 8780, 9163, 9289, 9287, 9157, 8899, 8513, 7999, 7613,
X       7355, 7095,   64, 8780, 9035, 9161, 9159, 9029, 8771, 7999,
X         64, 7225, 7354, 7610, 8248, 8632, 8889, 9019,   64, 7610,
X       8247, 8631, 8888, 9019,    0,  -16, 7116, 6987, 7880, 8007,
X       7878, 7751, 7752, 7882, 8011, 8396, 8780, 9163, 9289, 9287,
X       9157, 8771, 8386,   64, 8780, 9035, 9161, 9159, 9029, 8771,
X         64, 8130, 8386, 8769, 8896, 9022, 9019, 8889, 8760, 8375,
X       7863, 7480, 7353, 7227, 7228, 7357, 7484, 7355,   64, 8386,
X       8641, 8768, 8894, 8891, 8761, 8632, 8375,    0,  -16, 7116,
X       6987, 9035, 8247,   64, 9164, 8375,   64, 9164, 7229, 9277
X      };
X      short int subbuffer238[100] = {
X          0,  -16, 7116, 6987, 8140, 7490,   64, 8140, 9420,   64,
X       8139, 8779, 9420,   64, 7490, 7619, 8004, 8388, 8771, 8898,
X       9024, 9021, 8890, 8632, 8247, 7863, 7480, 7353, 7227, 7228,
X       7357, 7484, 7355,   64, 8388, 8643, 8770, 8896, 8893, 8762,
X       8504, 8247,    0,  -16, 7116, 6987, 9161, 9032, 9159, 9288,
X       9289, 9163, 8908, 8524, 8139, 7881, 7622, 7491, 7359, 7355,
X       7481, 7608, 7863, 8247, 8632, 8890, 9020, 9023, 8897, 8770,
X       8515, 8131, 7874, 7616, 7486,   64, 8524, 8267, 8009, 7750,
X       7619, 7487, 7482, 7608,   64, 8247, 8504, 8762, 8892, 8896,
X       8770,    0,  -16, 7116, 6987, 7756, 7494,   64, 9420, 9289
X      };
X      short int subbuffer239[100] = {
X       9030, 8384, 8125, 7995, 7863,   64, 9030, 8256, 7997, 7867,
X       7735,   64, 7625, 8012, 8268, 8905,   64, 7754, 8011, 8267,
X       8905, 9161, 9290, 9420,    0,  -16, 7116, 6987, 8396, 8011,
X       7882, 7752, 7749, 7875, 8130, 8514, 9027, 9156, 9286, 9289,
X       9163, 8780, 8396,   64, 8396, 8139, 8010, 7880, 7877, 8003,
X       8130,   64, 8514, 8899, 9028, 9158, 9161, 9035, 8780,   64,
X       8130, 7617, 7359, 7229, 7226, 7352, 7735, 8247, 8760, 8889,
X       9019, 9022, 8896, 8769, 8514,   64, 8130, 7745, 7487, 7357,
X       7354, 7480, 7735,   64, 8247, 8632, 8761, 8891, 8895, 8769,
X          0,  -16, 7116, 6987, 9157, 9027, 8769, 8512, 8128, 7873
X      };
X      short int subbuffer240[100] = {
X       7746, 7620, 7623, 7753, 8011, 8396, 8780, 9035, 9162, 9288,
X       9284, 9152, 9021, 8762, 8504, 8119, 7735, 7480, 7354, 7355,
X       7484, 7611, 7482,   64, 7873, 7747, 7751, 7881, 8139, 8396,
X         64, 9035, 9161, 9156, 9024, 8893, 8634, 8376, 8119,    0,
X        -16, 7116, 7622, 7993, 7864, 7991, 8120, 7993,    0,  -16,
X       7116, 7622, 7991, 7864, 7993, 8120, 8119, 7989, 7731,    0,
X        -16, 7116, 7622, 8389, 8260, 8387, 8516, 8389,   64, 7993,
X       7864, 7991, 8120,    0,  -16, 7116, 7622, 8389, 8260, 8387,
X       8516, 8389,   64, 7991, 7864, 7993, 8120, 8119, 7989, 7731,
X          0,  -16, 7116, 7622, 8652, 8523, 8255,   64, 8651, 8255
X      };
X      short int subbuffer241[100] = {
X         64, 8652, 8779, 8255,   64, 7993, 7864, 7991, 8120, 7993,
X          0,  -16, 7116, 6987, 7880, 8007, 7878, 7751, 7752, 7882,
X       8011, 8396, 8908, 9291, 9417, 9415, 9285, 9156, 8386, 8129,
X       8127, 8254, 8510,   64, 8908, 9163, 9289, 9287, 9157, 9028,
X       8771,   64, 7993, 7864, 7991, 8120, 7993,    0,  -16, 7116,
X       7622, 8780, 8522, 8392, 8391, 8518, 8647, 8520,    0,  -16,
X       7116, 7622, 8650, 8523, 8652, 8779, 8778, 8648, 8390,    0,
X        -16, 7116, 6605, 9540, 9411, 9538, 9667, 9668, 9541, 9413,
X       9156, 8898, 8250, 7992, 7735, 7351, 6968, 6842, 6844, 6974,
X       7103, 7360, 8002, 8259, 8517, 8647, 8649, 8523, 8268, 8011
X      };
X      short int subbuffer242[100] = {
X       7881, 7878, 8000, 8125, 8378, 8632, 8887, 9143, 9273, 9274,
X         64, 7351, 7096, 6970, 6972, 7102, 7231, 8002,   64, 7878,
X       8001, 8126, 8379, 8633, 8888, 9144, 9273,    0,  -16, 7116,
X       6987, 8528, 7475,   64, 9168, 8115,   64, 9288, 9159, 9286,
X       9415, 9416, 9290, 9163, 8780, 8268, 7883, 7625, 7623, 7749,
X       7876, 8768, 9022,   64, 7623, 7877, 8769, 8896, 9022, 9019,
X       8889, 8760, 8375, 7863, 7480, 7353, 7227, 7228, 7357, 7484,
X       7355,    0,  -16, 7116, 6859, 9936, 6576,    0,  -16, 7116,
X       7368, 9296, 8781, 8394, 8135, 7875, 7742, 7738, 7861, 7986,
X       8112,   64, 8781, 8393, 8133, 8002, 7869, 7864, 7987, 8112
X      };
X      short int subbuffer243[100] = {
X          0,  -16, 7116, 7239, 8400, 8526, 8651, 8774, 8770, 8637,
X       8377, 8118, 7731, 7216,   64, 8400, 8525, 8648, 8643, 8510,
X       8379, 8119, 7731,    0,  -16, 7116, 7241, 8524, 8512,   64,
X       7881, 9155,   64, 9161, 7875,    0,  -16, 7116, 6605, 7104,
X       9408,    0,  -16, 7116, 6605, 8265, 8247,   64, 7104, 9408,
X          0,  -16, 7116, 6605, 7107, 9411,   64, 7101, 9405,    0,
X        -16, 7116, 7749, 8652, 8389,   64, 8780, 8389,    0,  -16,
X       7116, 7113, 8012, 7749,   64, 8140, 7749,   64, 9164, 8901,
X         64, 9292, 8901,    0,  -16, 7116, 7368, 8396, 8139, 8009,
X       8007, 8133, 8388, 8644, 8901, 9031, 9033, 8907, 8652, 8396
X      };
X      short int subbuffer244[100] = {
X          0,  -16, 7116, 6986, 8268, 7351,   64, 8268, 9143,   64,
X       8265, 9015,   64, 7613, 8765,   64, 7095, 7863,   64, 8631,
X       9399,    0,  -16, 7116, 6859, 7500, 7479,   64, 7628, 7607,
X         64, 7116, 9164, 9158, 9036,   64, 7618, 8642, 9025, 9152,
X       9278, 9275, 9145, 9016, 8631, 7095,   64, 8642, 8897, 9024,
X       9150, 9147, 9017, 8888, 8631,    0,  -16, 7116, 6859, 7500,
X       7479,   64, 7628, 7607,   64, 7116, 8652, 9035, 9162, 9288,
X       9286, 9156, 9027, 8642,   64, 8652, 8907, 9034, 9160, 9158,
X       9028, 8899, 8642,   64, 7618, 8642, 9025, 9152, 9278, 9275,
X       9145, 9016, 8631, 7095,   64, 8642, 8897, 9024, 9150, 9147
X      };
X      short int subbuffer245[100] = {
X       9017, 8888, 8631,    0,  -16, 7116, 7113, 7756, 7735,   64,
X       7884, 7863,   64, 7372, 9292, 9286, 9164,   64, 7351, 8247,
X          0,  -16, 7116, 6732, 7756, 7750, 7614, 7482, 7352, 7223,
X         64, 9036, 9015,   64, 9164, 9143,   64, 7372, 9548,   64,
X       6839, 9527,   64, 6839, 6832,   64, 6967, 6832,   64, 9399,
X       9520,   64, 9527, 9520,    0,  -16, 7116, 6858, 7500, 7479,
X         64, 7628, 7607,   64, 8390, 8382,   64, 7116, 9164, 9158,
X       9036,   64, 7618, 8386,   64, 7095, 9143, 9149, 9015,    0,
X        -16, 7116, 6352, 8268, 8247,   64, 8396, 8375,   64, 7884,
X       8780,   64, 6859, 6986, 6857, 6730, 6731, 6860, 6988, 7115
X      };
X      short int subbuffer246[100] = {
X       7241, 7365, 7491, 7746, 8898, 9155, 9285, 9417, 9547, 9676,
X       9804, 9931, 9930, 9801, 9674, 9803,   64, 7746, 7489, 7359,
X       7226, 7096, 6967,   64, 7746, 7617, 7487, 7354, 7224, 7095,
X       6839, 6712, 6586,   64, 8898, 9153, 9279, 9402, 9528, 9655,
X         64, 8898, 9025, 9151, 9274, 9400, 9527, 9783, 9912,10042,
X         64, 7863, 8759,    0,  -16, 7116, 6986, 7497, 7372, 7366,
X       7497, 7755, 8012, 8524, 8907, 9033, 9030, 8900, 8515, 8131,
X         64, 8524, 8779, 8905, 8902, 8772, 8515,   64, 8515, 8770,
X       9024, 9150, 9147, 9017, 8888, 8503, 7863, 7608, 7481, 7355,
X       7356, 7485, 7612, 7483,   64, 8897, 9022, 9019, 8889, 8760
X      };
X      short int subbuffer247[100] = {
X       8503,    0,  -16, 7116, 6732, 7372, 7351,   64, 7500, 7479,
X         64, 9036, 9015,   64, 9164, 9143,   64, 6988, 7884,   64,
X       8652, 9548,   64, 9034, 7481,   64, 6967, 7863,   64, 8631,
X       9527,    0,  -16, 7116, 6732, 7372, 7351,   64, 7500, 7479,
X         64, 9036, 9015,   64, 9164, 9143,   64, 6988, 7884,   64,
X       8652, 9548,   64, 9034, 7481,   64, 6967, 7863,   64, 8631,
X       9527,   64, 7762, 7763, 7635, 7634, 7760, 8015, 8527, 8784,
X       8914,    0,  -16, 7116, 6732, 7372, 7351,   64, 7500, 7479,
X         64, 6988, 7884,   64, 7490, 8386, 8643, 8773, 8905, 9035,
X       9164, 9292, 9419, 9418, 9289, 9162, 9291,   64, 8386, 8641
X      };
X      short int subbuffer248[100] = {
X       8767, 8890, 9016, 9143,   64, 8386, 8513, 8639, 8762, 8888,
X       9015, 9271, 9400, 9530,   64, 6967, 7863,    0,  -16, 7116,
X       6604, 7628, 7622, 7486, 7354, 7224, 7095, 6967, 6840, 6841,
X       6970, 7097, 6968,   64, 9036, 9015,   64, 9164, 9143,   64,
X       7244, 9548,   64, 8631, 9527,    0,  -16, 7116, 6733, 7372,
X       7351,   64, 7500, 8250,   64, 7372, 8247,   64, 9164, 8247,
X         64, 9164, 9143,   64, 9292, 9271,   64, 6988, 7500,   64,
X       9164, 9676,   64, 6967, 7735,   64, 8759, 9655,    0,  -16,
X       7116, 6732, 7372, 7351,   64, 7500, 7479,   64, 9036, 9015,
X         64, 9164, 9143,   64, 6988, 7884,   64, 8652, 9548,   64
X      };
X      short int subbuffer249[100] = {
X       7490, 9026,   64, 6967, 7863,   64, 8631, 9527,    0,  -16,
X       7116, 6859, 8140, 7755, 7497, 7367, 7235, 7232, 7356, 7482,
X       7736, 8119, 8375, 8760, 9018, 9148, 9280, 9283, 9159, 9033,
X       8779, 8396, 8140,   64, 8140, 7883, 7625, 7495, 7363, 7360,
X       7484, 7610, 7864, 8119,   64, 8375, 8632, 8890, 9020, 9152,
X       9155, 9031, 8905, 8651, 8396,    0,  -16, 7116, 6732, 7372,
X       7351,   64, 7500, 7479,   64, 9036, 9015,   64, 9164, 9143,
X         64, 6988, 9548,   64, 6967, 7863,   64, 8631, 9527,    0,
X        -16, 7116, 6859, 7500, 7479,   64, 7628, 7607,   64, 7116,
X       8652, 9035, 9162, 9288, 9285, 9155, 9026, 8641, 7617,   64
X      };
SHAR_EOF
echo "extracting font11.c"
sed 's/^X//' << \SHAR_EOF > font11.c
X      short int subbuffer250[100] = {
X       8652, 8907, 9034, 9160, 9157, 9027, 8898, 8641,   64, 7095,
X       7991,    0,  -16, 7116, 6858, 9033, 9158, 9164, 9033, 8779,
X       8396, 8140, 7755, 7497, 7367, 7236, 7231, 7356, 7482, 7736,
X       8119, 8375, 8760, 9018, 9148,   64, 8140, 7883, 7625, 7495,
X       7364, 7359, 7484, 7610, 7864, 8119,    0,  -16, 7116, 7114,
X       8268, 8247,   64, 8396, 8375,   64, 7500, 7366, 7372, 9292,
X       9286, 9164,   64, 7863, 8759,    0,  -16, 7116, 6987, 7372,
X       8252,   64, 7500, 8380,   64, 9292, 8380, 8121, 7992, 7735,
X       7607, 7480, 7481, 7610, 7737, 7608,   64, 7116, 7884,   64,
X       8780, 9548,    0,  -16, 7116, 6733, 8268, 8247,   64, 8396
X      };
X      short int subbuffer251[100] = {
X       8375,   64, 7884, 8780,   64, 8009, 7496, 7238, 7107, 7104,
X       7229, 7483, 7994, 8634, 9147, 9405, 9536, 9539, 9414, 9160,
X       8649, 8009,   64, 8009, 7624, 7366, 7235, 7232, 7357, 7611,
X       7994,   64, 8634, 9019, 9277, 9408, 9411, 9286, 9032, 8649,
X         64, 7863, 8759,    0,  -16, 7116, 6986, 7372, 9015,   64,
X       7500, 9143,   64, 9164, 7351,   64, 7116, 7884,   64, 8652,
X       9420,   64, 7095, 7863,   64, 8631, 9399,    0,  -16, 7116,
X       6732, 7372, 7351,   64, 7500, 7479,   64, 9036, 9015,   64,
X       9164, 9143,   64, 6988, 7884,   64, 8652, 9548,   64, 6967,
X       9527,   64, 9399, 9520,   64, 9527, 9520,    0,  -16, 7116
X      };
X      short int subbuffer252[100] = {
X       6731, 7372, 7361, 7487, 7870, 8254, 8639, 8897,   64, 7500,
X       7489, 7615, 7870,   64, 8908, 8887,   64, 9036, 9015,   64,
X       6988, 7884,   64, 8524, 9420,   64, 8503, 9399,    0,  -16,
X       7116, 6225, 6860, 6839,   64, 6988, 6967,   64, 8268, 8247,
X         64, 8396, 8375,   64, 9676, 9655,   64, 9804, 9783,   64,
X       6476, 7372,   64, 7884, 8780,   64, 9292,10188,   64, 6455,
X      10167,    0,  -16, 7116, 6225, 6860, 6839,   64, 6988, 6967,
X         64, 8268, 8247,   64, 8396, 8375,   64, 9676, 9655,   64,
X       9804, 9783,   64, 6476, 7372,   64, 7884, 8780,   64, 9292,
X      10188,   64, 6455,10167,   64,10039,10160,   64,10167,10160
X      };
X      short int subbuffer253[100] = {
X          0,  -16, 7116, 6734, 8012, 7991,   64, 8140, 8119,   64,
X       7116, 6982, 6988, 8524,   64, 8130, 9026, 9409, 9536, 9662,
X       9659, 9529, 9400, 9015, 7607,   64, 9026, 9281, 9408, 9534,
X       9531, 9401, 9272, 9015,    0,  -16, 7116, 6351, 6988, 6967,
X         64, 7116, 7095,   64, 6604, 7500,   64, 7106, 8002, 8385,
X       8512, 8638, 8635, 8505, 8376, 7991, 6583,   64, 8002, 8257,
X       8384, 8510, 8507, 8377, 8248, 7991,   64, 9420, 9399,   64,
X       9548, 9527,   64, 9036, 9932,   64, 9015, 9911,    0,  -16,
X       7116, 6987, 7628, 7607,   64, 7756, 7735,   64, 7244, 8140,
X         64, 7746, 8642, 9025, 9152, 9278, 9275, 9145, 9016, 8631
X      };
X      short int subbuffer254[100] = {
X       7223,   64, 8642, 8897, 9024, 9150, 9147, 9017, 8888, 8631,
X          0,  -16, 7116, 6987, 7497, 7372, 7366, 7497, 7755, 8140,
X       8396, 8779, 9033, 9159, 9284, 9279, 9148, 9018, 8760, 8375,
X       7991, 7608, 7481, 7355, 7356, 7485, 7612, 7483,   64, 8396,
X       8651, 8905, 9031, 9156, 9151, 9020, 8890, 8632, 8375,   64,
X       8002, 9154,    0,  -16, 7116, 6352, 6988, 6967,   64, 7116,
X       7095,   64, 6604, 7500,   64, 6583, 7479,   64, 8780, 8395,
X       8137, 8007, 7875, 7872, 7996, 8122, 8376, 8759, 9015, 9400,
X       9658, 9788, 9920, 9923, 9799, 9673, 9419, 9036, 8780,   64,
X       8780, 8523, 8265, 8135, 8003, 8000, 8124, 8250, 8504, 8759
X      };
X      short int subbuffer255[100] = {
X         64, 9015, 9272, 9530, 9660, 9792, 9795, 9671, 9545, 9291,
X       9036,   64, 7106, 7874,    0,  -16, 7116, 6859, 8908, 8887,
X         64, 9036, 9015,   64, 9420, 7884, 7499, 7370, 7240, 7238,
X       7364, 7491, 7874, 8898,   64, 7884, 7627, 7498, 7368, 7366,
X       7492, 7619, 7874,   64, 8258, 8001, 7872, 7481, 7352, 7224,
X       7097,   64, 8001, 7871, 7608, 7479, 7223, 7097, 7098,   64,
X       8503, 9399,    0,  -16, 7116, 7115, 7747, 7746, 7618, 7619,
X       7748, 8005, 8517, 8772, 8899, 9025, 9018, 9144, 9271,   64,
X       8899, 8890, 9016, 9271, 9399,   64, 8897, 8768, 7999, 7614,
X       7484, 7482, 7608, 7991, 8375, 8632, 8890,   64, 7999, 7742
X      };
X      short int subbuffer256[100] = {
X       7612, 7610, 7736, 7991,    0,  -16, 7116, 6986, 9036, 8907,
X       8137, 7751, 7492, 7361, 7357, 7482, 7736, 8119, 8375, 8760,
X       9018, 9149, 9151, 9026, 8772, 8389, 8133, 7748, 7490, 7359,
X         64, 9036, 8906, 8649, 8136, 7750, 7492,   64, 8133, 7876,
X       7618, 7487, 7485, 7610, 7864, 8119,   64, 8375, 8632, 8890,
X       9021, 9023, 8898, 8644, 8389,    0,  -16, 7116, 6986, 7621,
X       7607,   64, 7749, 7735,   64, 7237, 8645, 9028, 9154, 9153,
X       9023, 8638,   64, 8645, 8900, 9026, 9025, 8895, 8638,   64,
X       7742, 8638, 9021, 9147, 9146, 9016, 8631, 7223,   64, 8638,
X       8893, 9019, 9018, 8888, 8631,    0,  -16, 7116, 6984, 7621
X      };
X      short int subbuffer257[100] = {
X       7607,   64, 7749, 7735,   64, 7237, 9029, 9024, 8901,   64,
X       7223, 8119,    0,  -16, 7116, 6731, 7749, 7745, 7611, 7480,
X       7351,   64, 8901, 8887,   64, 9029, 9015,   64, 7365, 9413,
X         64, 7095, 6962, 6967, 9399, 9394, 9271,    0,  -16, 7116,
X       6985, 7487, 9023, 9025, 8899, 8772, 8517, 8133, 7748, 7490,
X       7359, 7357, 7482, 7736, 8119, 8375, 8760, 9018,   64, 8895,
X       8898, 8772,   64, 8133, 7876, 7618, 7487, 7485, 7610, 7864,
X       8119,    0,  -16, 7116, 6606, 8261, 8247,   64, 8389, 8375,
X         64, 7877, 8773,   64, 7236, 7107, 6980, 7109, 7237, 7364,
X       7616, 7743, 7998, 8638, 8895, 9024, 9284, 9413, 9541, 9668
X      };
X      short int subbuffer258[100] = {
X       9539, 9412,   64, 7998, 7741, 7612, 7352, 7223,   64, 7998,
X       7740, 7480, 7351, 7095, 6968, 6842,   64, 8638, 8893, 9020,
X       9272, 9399,   64, 8638, 8892, 9144, 9271, 9527, 9656, 9786,
X         64, 7863, 8759,    0,  -16, 7116, 7113, 7619, 7493, 7489,
X       7619, 7748, 8005, 8517, 8900, 9026, 9025, 8895, 8510,   64,
X       8517, 8772, 8898, 8897, 8767, 8510,   64, 8126, 8510, 8893,
X       9019, 9018, 8888, 8503, 7991, 7608, 7482, 7483, 7612, 7739,
X       7610,   64, 8510, 8765, 8891, 8890, 8760, 8503,    0,  -16,
X       7116, 6859, 7493, 7479,   64, 7621, 7607,   64, 8901, 8887,
X         64, 9029, 9015,   64, 7109, 8005,   64, 8517, 9413,   64
X      };
X      short int subbuffer259[100] = {
X       7095, 7991,   64, 8503, 9399,   64, 8900, 7608,    0,  -16,
X       7116, 6859, 7493, 7479,   64, 7621, 7607,   64, 8901, 8887,
X         64, 9029, 9015,   64, 7109, 8005,   64, 8517, 9413,   64,
X       7095, 7991,   64, 8503, 9399,   64, 8900, 7608,   64, 7883,
X       7884, 7756, 7755, 7881, 8136, 8392, 8649, 8779,    0,  -16,
X       7116, 6986, 7621, 7607,   64, 7749, 7735,   64, 7237, 8133,
X         64, 7742, 7998, 8383, 8512, 8772, 8901, 9029, 9156, 9027,
X       8900,   64, 7998, 8381, 8508, 8760, 8887,   64, 7998, 8253,
X       8380, 8632, 8759, 9015, 9144, 9274,   64, 7223, 8119,    0,
X        -16, 7116, 6859, 7749, 7745, 7611, 7480, 7351, 7223, 7096
X      };
X      short int subbuffer260[100] = {
X       7225, 7352,   64, 8901, 8887,   64, 9029, 9015,   64, 7365,
X       9413,   64, 8503, 9399,    0,  -16, 7116, 6860, 7493, 7479,
X         64, 7493, 8247,   64, 7621, 8249,   64, 9029, 8247,   64,
X       9029, 9015,   64, 9157, 9143,   64, 7109, 7621,   64, 9029,
X       9541,   64, 7095, 7863,   64, 8631, 9527,    0,  -16, 7116,
X       6859, 7493, 7479,   64, 7621, 7607,   64, 8901, 8887,   64,
X       9029, 9015,   64, 7109, 8005,   64, 8517, 9413,   64, 7614,
X       8894,   64, 7095, 7991,   64, 8503, 9399,    0,  -16, 7116,
X       6986, 8133, 7748, 7490, 7359, 7357, 7482, 7736, 8119, 8375,
X       8760, 9018, 9149, 9151, 9026, 8772, 8389, 8133,   64, 8133
X      };
X      short int subbuffer261[100] = {
X       7876, 7618, 7487, 7485, 7610, 7864, 8119,   64, 8375, 8632,
X       8890, 9021, 9023, 8898, 8644, 8389,    0,  -16, 7116, 6859,
X       7493, 7479,   64, 7621, 7607,   64, 8901, 8887,   64, 9029,
X       9015,   64, 7109, 9413,   64, 7095, 7991,   64, 8503, 9399,
X          0,  -16, 7116, 6858, 7493, 7472,   64, 7621, 7600,   64,
X       7618, 7876, 8133, 8389, 8772, 9026, 9151, 9149, 9018, 8760,
X       8375, 8119, 7864, 7610,   64, 8389, 8644, 8898, 9023, 9021,
X       8890, 8632, 8375,   64, 7109, 7621,   64, 7088, 7984,    0,
X        -16, 7116, 6985, 8898, 8769, 8896, 9025, 9026, 8772, 8517,
X       8133, 7748, 7490, 7359, 7357, 7482, 7736, 8119, 8375, 8760
X      };
X      short int subbuffer262[100] = {
X       9018,   64, 8133, 7876, 7618, 7487, 7485, 7610, 7864, 8119,
X          0,  -16, 7116, 7114, 8261, 8247,   64, 8389, 8375,   64,
X       7621, 7488, 7493, 9157, 9152, 9029,   64, 7863, 8759,    0,
X        -16, 7116, 7113, 7493, 8247,   64, 7621, 8249,   64, 9029,
X       8247, 7987, 7729, 7472, 7344, 7217, 7346, 7473,   64, 7237,
X       8005,   64, 8517, 9285,    0,  -16, 7116, 6987, 8268, 8240,
X         64, 8396, 8368,   64, 7884, 8396,   64, 8258, 8132, 8005,
X       7749, 7492, 7361, 7355, 7480, 7735, 7991, 8120, 8250,   64,
X       7749, 7620, 7489, 7483, 7608, 7735,   64, 8901, 9028, 9153,
X       9147, 9016, 8887,   64, 8386, 8516, 8645, 8901, 9156, 9281
X      };
X      short int subbuffer263[100] = {
X       9275, 9144, 8887, 8631, 8504, 8378,   64, 7856, 8752,    0,
X        -16, 7116, 6986, 7493, 8887,   64, 7621, 9015,   64, 9029,
X       7479,   64, 7237, 8005,   64, 8517, 9285,   64, 7223, 7991,
X         64, 8503, 9271,    0,  -16, 7116, 6859, 7493, 7479,   64,
X       7621, 7607,   64, 8901, 8887,   64, 9029, 9015,   64, 7109,
X       8005,   64, 8517, 9413,   64, 7095, 9399, 9394, 9271,    0,
X        -16, 7116, 6859, 7493, 7486, 7612, 7995, 8251, 8636, 8894,
X         64, 7621, 7614, 7740, 7995,   64, 8901, 8887,   64, 9029,
X       9015,   64, 7109, 8005,   64, 8517, 9413,   64, 8503, 9399,
X          0,  -16, 7116, 6352, 6981, 6967,   64, 7109, 7095,   64
X      };
X      short int subbuffer264[100] = {
X       8261, 8247,   64, 8389, 8375,   64, 9541, 9527,   64, 9669,
X       9655,   64, 6597, 7493,   64, 7877, 8773,   64, 9157,10053,
X         64, 6583,10039,    0,  -16, 7116, 6352, 6981, 6967,   64,
X       7109, 7095,   64, 8261, 8247,   64, 8389, 8375,   64, 9541,
X       9527,   64, 9669, 9655,   64, 6597, 7493,   64, 7877, 8773,
X         64, 9157,10053,   64, 6583,10039,10034, 9911,    0,  -16,
X       7116, 6987, 8133, 8119,   64, 8261, 8247,   64, 7493, 7360,
X       7365, 8645,   64, 8254, 8766, 9149, 9275, 9274, 9144, 8759,
X       7735,   64, 8766, 9021, 9147, 9146, 9016, 8759,    0,  -16,
X       7116, 6605, 7237, 7223,   64, 7365, 7351,   64, 6853, 7749
X      };
X      short int subbuffer265[100] = {
X         64, 7358, 7870, 8253, 8379, 8378, 8248, 7863, 6839,   64,
X       7870, 8125, 8251, 8250, 8120, 7863,   64, 9157, 9143,   64,
X       9285, 9271,   64, 8773, 9669,   64, 8759, 9655,    0,  -16,
X       7116, 7241, 7877, 7863,   64, 8005, 7991,   64, 7493, 8389,
X         64, 7998, 8510, 8893, 9019, 9018, 8888, 8503, 7479,   64,
X       8510, 8765, 8891, 8890, 8760, 8503,    0,  -16, 7116, 7114,
X       7619, 7493, 7489, 7619, 7748, 8005, 8389, 8772, 9026, 9151,
X       9149, 9018, 8760, 8375, 7991, 7736, 7482, 7483, 7612, 7739,
X       7610,   64, 8389, 8644, 8898, 9023, 9021, 8890, 8632, 8375,
X         64, 8254, 9022,    0,  -16, 7116, 6479, 7109, 7095,   64
X      };
X      short int subbuffer266[100] = {
X       7237, 7223,   64, 6725, 7621,   64, 6711, 7607,   64, 8773,
X       8388, 8130, 7999, 7997, 8122, 8376, 8759, 9015, 9400, 9658,
X       9789, 9791, 9666, 9412, 9029, 8773,   64, 8773, 8516, 8258,
X       8127, 8125, 8250, 8504, 8759,   64, 9015, 9272, 9530, 9661,
X       9663, 9538, 9284, 9029,   64, 7230, 7998,    0,  -16, 7116,
X       6858, 8773, 8759,   64, 8901, 8887,   64, 9285, 7877, 7492,
X       7362, 7361, 7487, 7870, 8766,   64, 7877, 7620, 7490, 7489,
X       7615, 7870,   64, 8510, 8125, 7996, 7736, 7607,   64, 8510,
X       8253, 8124, 7864, 7735, 7479, 7352, 7226,   64, 8375, 9271,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
X      };
X      short int subbuffer267[100] = {
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
X      };
X      short int subbuffer268[100] = {
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
X      };
X      short int subbuffer269[100] = {
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
X      };
X
X      short int subhersh0[176] = {
X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
X       2262, 2264,  699,  714,  717,  733,  719, 2271,  734,  716,
X        721,  722,  728,  725,  711,  724,  710,  720,  700,  701,
X        702,  703,  704,  705,  706,  707,  708,  709,  712,  713,
X       2241,  726, 2242,  715, 2273,  501,  502,  503,  504,  505,
X        506,  507,  508,  509,  510,  511,  512,  513,  514,  515,
X        516,  517,  518,  519,  520,  521,  522,  523,  524,  525,
X        526, 2223,  729, 2224,  718,  729, 2249,  601,  602,  603,
X        604,  605,  606,  607,  608,  609,  610,  611,  612,  613,
X        614,  615,  616,  617,  618,  619,  620,  621,  622,  623,
X        624,  625,  626, 2225,  723, 2226, 2246,  699,  527,  528,
X        529,  530,  531,  532,  533,  534,  535,  536,  537,  538,
X        539,  540,  541,  542,  543,  544,  545,  546,  547,  548,
X        549,  550,  627,  628,  629,  630,  684,  632,  633,  685,
X        635,  636,  637,  638,  639,  640,  641,  642,  643,  644,
X        645,  646,  686,  648,  649,  650
X      };
X      short int subhersh1[176] = {
X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
X       2262, 2264, 2199, 2214, 2217, 2275, 2274, 2271, 2272, 2216,
X       2221, 2222, 2219, 2232, 2211, 2231, 2210, 2220, 2200, 2201,
X       2202, 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2212, 2213,
X       2241, 2238, 2242, 2215, 2273, 2001, 2002, 2003, 2004, 2005,
X       2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
X       2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025,
X       2026, 2223, 2236, 2224, 2218, 2236, 2249, 2101, 2102, 2103,
X       2104, 2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113,
X       2114, 2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123,
X       2124, 2125, 2126, 2225, 2229, 2226, 2246, 2199, 2027, 2028,
X       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
X       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
X       2049, 2050, 2127, 2128, 2129, 2130, 2184, 2132, 2133, 2185,
X       2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144,
X       2145, 2146, 2186, 2148, 2149, 2150
X      };
X      short int subhersh2[176] = {
X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
X       2262, 2264, 2199, 2764, 2778, 2275, 2769, 2271, 2768, 2777,
X       2771, 2772, 2773, 2775, 2761, 2774, 2760, 2770, 2750, 2751,
X       2752, 2753, 2754, 2755, 2756, 2757, 2758, 2759, 2762, 2763,
X       2241, 2776, 2242, 2765, 2273, 2051, 2052, 2053, 2054, 2055,
X       2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065,
X       2066, 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075,
X       2076, 2223, 2236, 2224, 2779, 2236, 2249, 2151, 2152, 2153,
X       2154, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2163,
X       2164, 2165, 2166, 2167, 2168, 2169, 2170, 2171, 2172, 2173,
X       2174, 2175, 2176, 2225, 2229, 2226, 2246, 2199, 2027, 2028,
X       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
X       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
X       2049, 2050, 2127, 2128, 2129, 2130, 2184, 2132, 2133, 2185,
X       2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144,
X       2145, 2146, 2186, 2148, 2149, 2150
X      };
X      short int subhersh3[176] = {
X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
X       2262, 2264, 2199, 2764, 2778, 2275, 2769, 2271, 2768, 2777,
X       2771, 2772, 2773, 2775, 2761, 2774, 2760, 2770, 2750, 2751,
X       2752, 2753, 2754, 2755, 2756, 2757, 2758, 2759, 2762, 2763,
X       2241, 2776, 2242, 2765, 2273, 2551, 2552, 2553, 2554, 2555,
X       2556, 2557, 2558, 2559, 2560, 2561, 2562, 2563, 2564, 2565,
X       2566, 2567, 2568, 2569, 2570, 2571, 2572, 2573, 2574, 2575,
X       2576, 2223, 2236, 2224, 2779, 2236, 2249, 2651, 2652, 2653,
X       2654, 2655, 2656, 2657, 2658, 2659, 2660, 2661, 2662, 2663,
X       2664, 2665, 2666, 2667, 2668, 2669, 2670, 2671, 2672, 2673,
X       2674, 2675, 2676, 2225, 2229, 2226, 2246, 2199, 2027, 2028,
X       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
X       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
X       2049, 2050, 2127, 2128, 2129, 2130, 2184, 2132, 2133, 2185,
X       2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144,
X       2145, 2146, 2186, 2148, 2149, 2150
X      };
SHAR_EOF
echo "extracting genlin.c"
sed 's/^X//' << \SHAR_EOF > genlin.c
X/* General line-drawing routine which takes line styles into account */
X
X#include "plplot.h"
X#include "declare.h"
X#include <math.h>
X
Xstatic int lastx=-100000, lasty=-100000;
X
Xvoid genlin(x1,y1,x2,y2)
Xint x1,y1,x2,y2;
X{
X   int nx,ny;
X   int modulo, incr, dx, dy, diax, diay, i, temp, x, y;
X   int px, py, tstep;
X
X/* Check for solid line */
X
X   if (nms == 0) {
X      grline(x1,y1,x2,y2);
X      return;
X   }
X
X/* Check if pattern needs to be restarted */
X
X   if (x1 != lastx || y1 != lasty) {
X        curel = 0;
X        pendn = 1;
X        timecnt = 0;
X        alarm = mark[curel];
X        if (x1 == x2 && y1 == y2) grline(x1,y1,x2,y2);
X   }
X
X   lastx = x1;
X   lasty = y1;
X
X   if (x1 == x2 && y1 == y2) return;
X
X   nx = x2 - x1;
X   ny = y2 - y1;
X
X   if (abs(ny) > abs(nx)) {
X        modulo = abs(ny);
X        incr   = abs(nx);
X        dx     = 0;
X        dy     = -1;
X        if (ny > 0) dy = 1;
X   }
X   else {
X        modulo = abs(nx);
X        incr   = abs(ny);
X        dx     = -1;
X        if (nx > 0) dx = 1;
X        dy     = 0;
X   }
X
X   diax = -1;
X   if (nx > 0) diax = 1;
X   diay = -1;
X   if (ny > 0) diay = 1;
X
X   temp = modulo/2;
X   x = x1;
X   y = y1;
X   i = 1;
X
X/* Compute the timer step */
X
X   tstep = sqrt(pow((double)(abs(nx)*umx),2.)+
X                   pow((double)(abs(ny)*umy),2.))/modulo;
X
Xloop:
X   if (i > modulo) goto exit;
X   i = i+1;
X   temp = temp+incr;
X   px = x;
X   py = y;
X   if (temp > modulo) {
X          temp = temp-modulo;
X          x = x + diax;
X          y = y + diay;
X   }
X   else {
X          x = x + dx;
X          y = y + dy;
X   }
X   timecnt += tstep;
X   if (timecnt >= alarm) {
X          plupd();
X          if (pendn == 0) grline(lastx,lasty,px,py);
X          lastx = x;
X          lasty = y;
X   }
X   goto loop;
X
Xexit:
X   if (pendn != 0) grline(lastx,lasty,x,y);
X   lastx = x2;
X   lasty = y2;
X}
X
X
X
SHAR_EOF
echo "extracting global.c"
sed 's/^X//' << \SHAR_EOF > global.c
X/* Sets and gets global variables */
X
X#include "plplot.h"
X#include "declare.h"
X
Xvoid glev(n)
Xint *n;
X{
X      *n = level;
X}
X
Xvoid slev(n)
Xint n;
X{
X      level = n;
X}
X
Xvoid gbase(x,y,xc,yc)
Xfloat *x,*y,*xc,*yc;
X{
X      *x = base3x;
X      *y = base3y;
X      *xc = basecx;
X      *yc = basecy;
X}
X
Xvoid sbase(x,y,xc,yc)
Xfloat x,y,xc,yc;
X{
X      base3x = x;
X      base3y = y;
X      basecx = xc;
X      basecy = yc;
X}
X
Xvoid gnms(n)
Xint *n;
X{
X      *n = nms;
X}
X
Xvoid snms(n)
Xint n;
X{
X      nms = n;
X}
X
Xvoid gdev(dev,term,gra)
Xint *dev,*term,*gra;
X{
X      *dev = device;
X      *term = termin;
X      *gra = graphx;
X}
X
Xvoid sdev(dev,term,gra)
Xint dev,term,gra;
X{
X      device = dev;
X      termin = term;
X      graphx = gra;
X}
X
Xvoid gcurr(ix,iy)
Xint *ix,*iy;
X{
X      *ix = currx;
X      *iy = curry;
X}
X
Xvoid scurr(ix,iy)
Xint ix,iy;
X{
X      currx = ix;
X      curry = iy;
X}
X
Xvoid gdom(xmin,xmax,ymin,ymax)
Xfloat *xmin,*xmax,*ymin,*ymax;
X{
X      *xmin = domxmi;
X      *xmax = domxma;
X      *ymin = domymi;
X      *ymax = domyma;
X}
X
Xvoid sdom(xmin,xmax,ymin,ymax)
Xfloat xmin,xmax,ymin,ymax;
X{
X      domxmi = xmin;
X      domxma = xmax;
X      domymi = ymin;
X      domyma = ymax;
X}
X
Xvoid grange(zscl,zmin,zmax)
Xfloat *zscl,*zmin,*zmax;
X{
X      *zscl = zzscl;
X      *zmin = ranmi;
X      *zmax = ranma;
X}
X
Xvoid srange(zscl,zmin,zmax)
Xfloat zscl,zmin,zmax;
X{
X      zzscl = zscl;
X      ranmi = zmin;
X      ranma = zmax;
X}
X
Xvoid gw3wc(dxx,dxy,dyx,dyy,dyz)
Xfloat *dxx,*dxy,*dyx,*dyy,*dyz;
X{
X      *dxx = cxx;
X      *dxy = cxy;
X      *dyx = cyx;
X      *dyy = cyy;
X      *dyz = cyz;
X}
X
Xvoid sw3wc(dxx,dxy,dyx,dyy,dyz)
Xfloat dxx,dxy,dyx,dyy,dyz;
X{
X      cxx = dxx;
X      cxy = dxy;
X      cyx = dyx;
X      cyy = dyy;
X      cyz = dyz;
X}
X
Xvoid gvpp(ixmin,ixmax,iymin,iymax)
Xint *ixmin,*ixmax,*iymin,*iymax;
X{
X      *ixmin = vppxmi;
X      *ixmax = vppxma;
X      *iymin = vppymi;
X      *iymax = vppyma;
X}
X
Xvoid svpp(ixmin,ixmax,iymin,iymax)
Xint ixmin,ixmax,iymin,iymax;
X{
X      vppxmi = ixmin;
X      vppxma = ixmax;
X      vppymi = iymin;
X      vppyma = iymax;
X}
X
Xvoid gspp(ixmin,ixmax,iymin,iymax)
Xint *ixmin,*ixmax,*iymin,*iymax;
X{
X      *ixmin = sppxmi;
X      *ixmax = sppxma;
X      *iymin = sppymi;
X      *iymax = sppyma;
X}
X
Xvoid sspp(ixmin,ixmax,iymin,iymax)
Xint ixmin,ixmax,iymin,iymax;
X{
X      sppxmi = ixmin;
X      sppxma = ixmax;
X      sppymi = iymin;
X      sppyma = iymax;
X}
X
Xvoid gclp(ixmin,ixmax,iymin,iymax)
Xint *ixmin,*ixmax,*iymin,*iymax;
X{
X      *ixmin = clpxmi;
X      *ixmax = clpxma;
X      *iymin = clpymi;
X      *iymax = clpyma;
X}
X
Xvoid sclp(ixmin,ixmax,iymin,iymax)
Xint ixmin,ixmax,iymin,iymax;
X{
X      clpxmi = ixmin;
X      clpxma = ixmax;
X      clpymi = iymin;
X      clpyma = iymax;
X}
X
Xvoid gphy(ixmin,ixmax,iymin,iymax)
Xint *ixmin,*ixmax,*iymin,*iymax;
X{
X      *ixmin = phyxmi;
X      *ixmax = phyxma;
X      *iymin = phyymi;
X      *iymax = phyyma;
X}
X
Xvoid sphy(ixmin,ixmax,iymin,iymax)
Xint ixmin,ixmax,iymin,iymax;
X{
X      phyxmi = ixmin;
X      phyxma = ixmax;
X      phyymi = iymin;
X      phyyma = iymax;
X}
X
Xvoid gsub(nx,ny,cs)
Xint *nx,*ny,*cs;
X{
X      *nx = nsubx;
X      *ny = nsuby;
X      *cs = cursub;
X}
X
Xvoid ssub(nx,ny,cs)
Xint nx,ny,cs;
X{
X      nsubx = nx;
X      nsuby = ny;
X      cursub = cs;
X}
X
Xvoid gumpix(ix,iy)
Xint *ix,*iy;
X{
X      *ix = umx;
X      *iy = umy;
X}
X
Xvoid sumpix(ix,iy)
Xint ix,iy;
X{
X      umx = ix;
X      umy = iy;
X}
X
Xvoid gatt(ifnt,icol)
Xint *ifnt,*icol;
X{
X      *ifnt = font;
X      *icol = colour;
X}
X
Xvoid satt(ifnt,icol)
Xint ifnt,icol;
X{
X      font = ifnt;
X      colour = icol;
X}
X
Xvoid gspd(xmin,xmax,ymin,ymax)
Xfloat *xmin,*xmax,*ymin,*ymax;
X{
X      *xmin = spdxmi;
X      *xmax = spdxma;
X      *ymin = spdymi;
X      *ymax = spdyma;
X}
X
Xvoid sspd(xmin,xmax,ymin,ymax)
Xfloat xmin,xmax,ymin,ymax;
X{
X      spdxmi = xmin;
X      spdxma = xmax;
X      spdymi = ymin;
X      spdyma = ymax;
X}
X
Xvoid gvpd(xmin,xmax,ymin,ymax)
Xfloat *xmin,*xmax,*ymin,*ymax;
X{
X      *xmin = vpdxmi;
X      *xmax = vpdxma;
X      *ymin = vpdymi;
X      *ymax = vpdyma;
X}
X
Xvoid svpd(xmin,xmax,ymin,ymax)
Xfloat xmin,xmax,ymin,ymax;
X{
X      vpdxmi = xmin;
X      vpdxma = xmax;
X      vpdymi = ymin;
X      vpdyma = ymax;
X}
X
Xvoid gvpw(xmin,xmax,ymin,ymax)
Xfloat *xmin,*xmax,*ymin,*ymax;
X{
X      *xmin = vpwxmi;
X      *xmax = vpwxma;
X      *ymin = vpwymi;
X      *ymax = vpwyma;
X}
X
Xvoid svpw(xmin,xmax,ymin,ymax)
Xfloat xmin,xmax,ymin,ymax;
X{
X      vpwxmi = xmin;
X      vpwxma = xmax;
X      vpwymi = ymin;
X      vpwyma = ymax;
X}
X
Xvoid gpixmm(x,y)
Xfloat *x,*y;
X{
X      *x = xpmm;
X      *y = ypmm;
X}
X
Xvoid spixmm(x,y)
Xfloat x,y;
X{
X      xpmm = x;
X      ypmm = y;
X}
X
Xvoid gwp(xscl,xoff,yscl,yoff)
Xfloat *xscl,*xoff,*yscl,*yoff;
X{
X      *xscl = wpxscl;
X      *xoff = wpxoff;
X      *yscl = wpyscl;
X      *yoff = wpyoff;
X}
X
Xvoid swm(xscl,xoff,yscl,yoff)
Xfloat xscl,xoff,yscl,yoff;
X{
X      wmxscl = xscl;
X      wmxoff = xoff;
X      wmyscl = yscl;
X      wmyoff = yoff;
X}
X
Xvoid gwm(xscl,xoff,yscl,yoff)
Xfloat *xscl,*xoff,*yscl,*yoff;
X{
X      *xscl = wmxscl;
X      *xoff = wmxoff;
X      *yscl = wmyscl;
X      *yoff = wmyoff;
X}
X
Xvoid swp(xscl,xoff,yscl,yoff)
Xfloat xscl,xoff,yscl,yoff;
X{
X      wpxscl = xscl;
X      wpxoff = xoff;
X      wpyscl = yscl;
X      wpyoff = yoff;
X}
X
Xvoid gdp(xscl,xoff,yscl,yoff)
Xfloat *xscl,*xoff,*yscl,*yoff;
X{
X      *xscl = dpxscl;
X      *xoff = dpxoff;
X      *yscl = dpyscl;
X      *yoff = dpyoff;
X}
X
Xvoid sdp(xscl,xoff,yscl,yoff)
Xfloat xscl,xoff,yscl,yoff;
X{
X      dpxscl = xscl;
X      dpxoff = xoff;
X      dpyscl = yscl;
X      dpyoff = yoff;
X}
X
Xvoid gmp(xscl,xoff,yscl,yoff)
Xfloat *xscl,*xoff,*yscl,*yoff;
X{
X      *xscl = mpxscl;
X      *xoff = mpxoff;
X      *yscl = mpyscl;
X      *yoff = mpyoff;
X}
X
Xvoid smp(xscl,xoff,yscl,yoff)
Xfloat xscl,xoff,yscl,yoff;
X{
X      mpxscl = xscl;
X      mpxoff = xoff;
X      mpyscl = yscl;
X      mpyoff = yoff;
X}
X            
Xvoid gchr(def,ht)
Xfloat *def,*ht;
X{
X      *def = chrdef;
X      *ht = chrht;
X}
X            
Xvoid schr(def,ht)
Xfloat def,ht;
X{
X      chrdef = def;
X      chrht = ht;
X}
X            
Xvoid gsym(def,ht)
Xfloat *def,*ht;
X{
X      *def = symdef;
X      *ht = symht;
X}
X            
Xvoid ssym(def,ht)
Xfloat def,ht;
X{
X      symdef = def;
X      symht = ht;
X}
X            
Xvoid gmaj(def,ht)
Xfloat *def,*ht;
X{
X      *def = majdef;
X      *ht = majht;
X}
X            
Xvoid smaj(def,ht)
Xfloat def,ht;
X{
X      majdef = def;
X      majht = ht;
X}
X            
Xvoid gmin(def,ht)
Xfloat *def,*ht;
X{
X      *def = mindef;
X      *ht = minht;
X}
X            
Xvoid smin(def,ht)
Xfloat def,ht;
X{
X      mindef = def;
X      minht = ht;
X}
X
SHAR_EOF
echo "extracting icnvrt.c"
sed 's/^X//' << \SHAR_EOF > icnvrt.c
X/* Coordinate transformations for plotting package */
X/* Convertion routines yielding an integer result  */
X
X#include "plplot.h"
X#include "declare.h"
X
X/* dcpc. converts device coordinates to physical coordinates */
X
Xint dcpcx(x)
Xfloat x;
X{
X      return(round(dpxoff + dpxscl * x));
X}
X
Xint dcpcy(y)
Xfloat y;
X{
X      return(round(dpyoff + dpyscl * y));
X}
X
X/* mmpc. converts millimetres from bottom left-hand corner to physical */
X/* coordinates */
X
Xint mmpcx(x)
Xfloat x;
X{
X      return(round(mpxoff + mpxscl * x));
X}
X
Xint mmpcy(y)
Xfloat y;
X{
X      return(round(mpyoff + mpyscl * y));
X}
X
X/* wcpc. converts world coordinates to physical coordinates */
X
Xint wcpcx(x)
Xfloat x;
X{
X      return(round(wpxoff + wpxscl * x));
X}
X
Xint wcpcy(y)
Xfloat y;
X{
X      return(round(wpyoff + wpyscl * y));
X}
X
SHAR_EOF
echo "extracting impress.c"
sed 's/^X//' << \SHAR_EOF > impress.c
X/* This file contains the IMPRESS device dependent subroutines for */
X/* use with plplot. */
X
X#include "plplot.h"
X#include <stdio.h>
X
X#define SET_HV_SYSTEM   0315
X#define OPBYTE1         031
X#define OPBYTE2         0140
X#define SET_ABS_H       0207
X#define SET_ABS_V       0211
X#define OPWORDH1        0
X#define OPWORDH2        150
X#define OPWORDV1        0
X#define OPWORDV2        150
X#define ENDPAGE         0333
X
Xstatic FILE *OutFile;
Xstatic int FirstClear=1;
X
X/* Open file.  Set up for graphics. */
Xvoid impini()
X{
X      char FileName[80];
X
X      printf("Enter file to receive imPress graphics commands. ");
X      scanf("%s",FileName);
X
X      if ((OutFile = fopen(FileName,"w")) == NULL)  {
X          printf("Error opening %s \n",FileName);
X          exit(1);
X      }
X      fprintf(OutFile,"@Document(Language ImPress, jobheader off)");
X      fprintf(OutFile,"%c%c",SET_HV_SYSTEM,OPBYTE1);
X      fprintf(OutFile,"%c%c%c",SET_ABS_H,OPWORDH1,OPWORDH2);
X      fprintf(OutFile,"%c%c%c",SET_ABS_V,OPWORDV1,OPWORDV2);
X      fprintf(OutFile,"%c%c",SET_HV_SYSTEM,OPBYTE2);
X}
X
X/* Sets the IMPRESS to text mode */
Xvoid imptex()
X{
X}
X
X/* Sets the IMPRESS to graphics mode */
Xvoid impgra()
X{
X}
X
X/* Form feed */
Xvoid impclr()
X{
X      if(FirstClear) 
X        FirstClear = 0;
X      else
X        fprintf(OutFile,"%c",ENDPAGE);
X}
X
X/* May put something here someday */
Xvoid impcol(colour)
Xint colour;
X{
X}
X
X#define CREATE_PATH   0346
X#define DRAW_PATH     0352
X#define OPTYPE        017
X#define COUNT1        0
X#define COUNT2        2
X
Xvoid implin(x1,y1,x2,y2)
Xint x1,y1,x2,y2;
X{
X      fprintf(OutFile,"%c%c%c",CREATE_PATH,COUNT1,COUNT2);
X      fprintf(OutFile,"%c%c%c%c",x1/256,x1%256,y1/256,y1%256);
X      fprintf(OutFile,"%c%c%c%c",x2/256,x2%256,y2/256,y2%256);
X      fprintf(OutFile,"%c%c",DRAW_PATH,OPTYPE);
X
X}
X      
X/* Close graphics file */
Xvoid imptid()
X{
X      fprintf(OutFile,"%c",ENDPAGE);
X      fclose(OutFile);
X}
SHAR_EOF
echo "extracting laserjetii.c"
sed 's/^X//' << \SHAR_EOF > laserjetii.c
X/* This file contains the Laser Jet II device dependent subroutines for */
X/* use with plplot. Only the 150 dpi mode is supported.  The others     */
X/* (75,100,300) should work by just changing the value of DPI and       */
X/* changing the values passed to setphy in DEVICE.f77                   */
X
X#include "plplot.h"
X#include <stdio.h>
X#include <stdlib.h>
X#include <string.h>
X#include <math.h>
X
X#define DPI      150            /* Resolution Dots per Inch */
X#define CURX     51
X#define CURY     61
X#define ESC      0x1b
X#define FF       0x0c
X#define XDOTS    1104           /* # dots across */
X#define YDOTS    1410           /* # dots down   */
X#define BPROW    XDOTS/8        /* # bytes across */
X#define NBYTES   BPROW*YDOTS    /* total number of bytes */
X
Xstatic FILE *OutFile;
X
X/* bitmap contains a pointer to an area of memory NBYTES in size */
Xstatic char *bitmap;
Xstatic int FirstClear=1;
X
X/* Opens the file for binary mode. */
X
Xvoid jetini()
X{
X  char FileName[80];
X
X  printf("Enter file name for LaserJet II graphics commands. ");
X  scanf("%s",FileName);
X
X  if((OutFile = fopen(FileName,"w")) == NULL) {
X   printf("Error opening %s \n",FileName);
X   exit(1);
X  }
X
X  /* Allocate storage for bit map matrix */
X  if((bitmap = (char *)calloc(NBYTES,sizeof(char))) == NULL)
X   printf("Out of memory in call to calloc \n");
X
X  /* Reset Printer */
X  fprintf(OutFile,"%cE",ESC);
X}
X
X/* Set JET to test mode */
Xvoid jettex()
X{
X  /* do nothing here */
X}
X
X/* Set JET to graphics mode */
Xvoid jetgra()
X{
X  /* Do nothing here */
X}
X
X/* Print out page */
Xvoid jetclr()
X{
X  int i,j;
X
X  if(FirstClear)
X    FirstClear=0;
X  else {
X    /* First move cursor to origin */
X    fprintf(OutFile,"%c*p%dX",ESC,CURX);
X    fprintf(OutFile,"%c*p%dY",ESC,CURY);
X
X    /* Then put Laser Printer in 150 dpi mode */
X    fprintf(OutFile,"%c*t%dR",ESC,DPI);
X    fprintf(OutFile,"%c*r1A",ESC);
X
X    /* Write out raster data */
X    for(j=0;j<YDOTS;j++){
X      fprintf(OutFile,"%c*b%dW",ESC,BPROW);
X      for(i=0;i<BPROW;i++)
X        putc(*(bitmap+i+j*BPROW),OutFile);
X    }
X
X    /* End raster graphics and send Form Feed */
X    fprintf(OutFile,"%c*rB",ESC);
X    fprintf(OutFile,"%c",FF);
X
X    /* Finally, clear out bitmap storage area */
X    memset(bitmap,'\0',NBYTES);
X  }
X}
X
X/* Change color */
Xvoid jetcol(colour)
Xint colour;
X{
X}
X
X/* Function to draw the line in the bitmap */
Xvoid jetlin(x1,y1,x2,y2)
Xint x1,y1,x2,y2;
X{
X int i;
X float length,fx,fy,dx,dy;
X void setpoint();
X 
X length = (float)sqrt((double)((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)));
X if(length == 0.)
X   length = 1.;
X dx = (x2 - x1)/length;
X dy = (y2 - y1)/length;
X
X fx = x1;
X fy = y1;
X setpoint(x1,y1);
X setpoint(x2,y2);
X
X for(i=1;i<=(int)length;i++)
X  setpoint((int)(fx+=dx),(int)(fy+=dy));
X}
X
Xstatic char mask[8] = {'\200','\100','\040','\020','\010','\004','\002','\001'};
X
X/* Function to set a bit in the bitmap */
Xstatic void setpoint(x,y)
Xint x,y;
X{
X int index;
X index = x/8 + y*BPROW;
X *(bitmap+index) = *(bitmap+index) | mask[x%8];
X}
X
X/* Reset printer and close file */
Xvoid jettid()
X{
X  jetclr();
X  /* Reset Printer */
X  fprintf(OutFile,"%cE",ESC);
X  fclose(OutFile);
X  free((void *)bitmap);
X}
X
X
SHAR_EOF
echo "extracting lmkfile"
sed 's/^X//' << \SHAR_EOF > lmkfile
XSRCS = src/plabv.c src/pladv.c src/plbeg.c src/plbin.c src/plbox.c \
X       src/plccal.c src/plclr.c src/plcntr.c src/plcol.c src/plcont.c \
X       src/plcvec.c src/pldeco.c src/pldtik.c src/plend.c src/plenv.c \
X       src/plerrx.c src/plerry.c src/plerx1.c src/plery1.c src/plfont.c \
X       src/plform.c src/plgra.c src/plgspa.c src/plhist.c src/plhrsh.c \
X       src/pljoin.c src/pllab.c src/pllclp.c src/plline.c src/plmtex.c \
X       src/plnxtv.c src/plpoi1.c src/plpoin.c src/plptex.c src/plr135.c \
X       src/plr45.c src/plschr.c src/plsmaj.c src/plsmin.c src/plssym.c \
X       src/plstar.c src/plstik.c src/plstr.c src/plstrl.c src/plstyl.c \
X       src/plsvpa.c src/plsym.c src/plsym1.c src/pltext.c src/plvpor.c \
X       src/plvsta.c src/plwind.c src/plxtik.c src/plxybx.c src/plxytx.c \
X       src/plytik.c src/plzbx.c src/plztx.c src/pl3cut.c src/plbox3.c \
X       src/plgrid3.c src/plot3d.c src/plside3.c src/plt3zz.c src/plw3d.c \
X       src/define.c src/fatal.c src/fcnvrt.c src/genlin.c src/global.c \
X       src/icnvrt.c src/movphy.c src/movwor.c src/round.c src/setphy.c \
X       src/setpxl.c src/setsub.c src/stindex.c src/strpos.c src/xform.c \
X       src/impress.c src/laserjetii.c src/tektronix.c src/Amiga.c \
X       src/font01.c src/font02.c src/font03.c src/font04.c src/font05.c \
X       src/font06.c src/font07.c src/font08.c src/font09.c src/font10.c \
X       src/font11.c
X       
X# I had trouble using the lformat option of the list command here so I
X# moved the command needed to update the library into the exec file 
X# UpdateLib.  I also had trouble with the R option of lc (using 5.0) hence
X# the need for updating the library myself.  I have not tryed this option
X# with version 5.02.  
X
Xlib/plplot.lib: $(SRCS)
X   @makedir ram:pltemp
X   @echo "Compiling Updated Routines"
X   -@lc -oram:pltemp/ -b0 -iinclude $?
X   @echo "Updating Library"
X   @execute UpdateLib
X   @echo "Finished"
SHAR_EOF
echo "extracting movphy.c"
sed 's/^X//' << \SHAR_EOF > movphy.c
X/*      MOVE AND DRAW ROUTINES IN PHYSICAL COORDINATES                */
X 
X/* Move to physical coordinates (x,y) */
X
X#include "plplot.h"
X
Xvoid movphy(x,y)
Xint x,y;
X{
X      scurr(x,y);
X}
X
X/* Draws to physical coordinates (x,y) */
X
Xvoid draphy(x,y)
Xint x,y;
X{
X      int currx, curry;
X      gcurr(&currx,&curry);
X      pllclp(currx,curry,x,y);
X} 
X
SHAR_EOF
echo "extracting movwor.c"
sed 's/^X//' << \SHAR_EOF > movwor.c
X/* MOVE AND DRAW ROUTINES IN WORLD COORDINATES */
X
X/* Move to world coordinates (x,y) */
X
X#include "plplot.h"
X
Xvoid movwor(x,y)
Xfloat x,y;
X{
X   scurr(wcpcx(x),wcpcy(y));
X}
X
X/* Draws to world coordinates (x,y) */
X
Xvoid drawor(x,y)
Xfloat x,y;
X{
X   int currx, curry;
X   gcurr(&currx,&curry);
X   pllclp(currx,curry,wcpcx(x),wcpcy(y));
X}
SHAR_EOF
echo "extracting pl3cut.c"
sed 's/^X//' << \SHAR_EOF > pl3cut.c
X/* Determines the point of intersection (cx,cy) between the line */
X/* joining (sx1,sy1) to (sx2,sy2) and the line joining */
X/* (su1,sv1) to (su2,sv2). */
X
X#include "plplot.h"
X
Xvoid pl3cut(sx1,sy1,sx2,sy2,su1,sv1,su2,sv2,cx,cy)
Xint sx1, sy1, sx2, sy2, su1, sv1, su2, sv2, *cx, *cy;
X{
X      int x21, y21, u21, v21, yv1, xu1, a, b;
X            
X      x21 = sx2 - sx1;
X      y21 = sy2 - sy1;
X      u21 = su2 - su1;
X      v21 = sv2 - sv1;
X      yv1 = sy1 - sv1;
X      xu1 = sx1 - su1;
X
X      a = x21 * v21 - y21 * u21;
X      if (a == 0) {
X        if (sx2 < su2) {
X          *cx = sx2;
X          *cy = sy2;
X        }
X        else {
X          *cx = su2;
X          *cy = sv2;
X        }
X        return;
X      }
X      else {
X        b = yv1 * u21 - xu1 * v21;
X        *cx = sx1 + (b * x21 + a/2) / a;
X        *cy = sy1 + (b * y21 + a/2) / a;
X      }
X}
SHAR_EOF
echo "extracting plabv.c"
sed 's/^X//' << \SHAR_EOF > plabv.c
X#include "plplot.h"
X
X/* Determines if point (px,py) lies above the line joining (sx1,sy1) to */
X/* (sx2,sy2). It only works correctly if sx1 <= px <= sx2  */
X
Xint plabv(px, py, sx1, sy1, sx2, sy2)
Xint px, py, sx1, sy1, sx2, sy2;
X{
X      int above;
X
X      if (py >= sy1 && py >= sy2) 
X        above = 1;
X      else if (py < sy1 && py < sy2)
X        above = 0;
X      else if ((sx2-sx1) * (py-sy1) > (px-sx1) * (sy2-sy1)) 
X        above = 1;
X      else
X        above = 0;
X
X      return(above);
X}
SHAR_EOF
echo "extracting pladv.c"
sed 's/^X//' << \SHAR_EOF > pladv.c
X/* Advance to subpage "page", or to the next one if "page" = 0 */
X
X#include "plplot.h"
X
Xvoid pladv(page)
Xint page;
X{
X      int cursub, nsubx, nsuby;
X      int device, termin, graphx;
X
X      int level;
X      glev(&level);
X      if (level < 1) fatal("Please call PLSTAR before calling PLADV.");
X      
X      gdev(&device,&termin,&graphx);
X      gsub(&nsubx,&nsuby,&cursub);
X      if (page > 0 && page <= nsubx*nsuby) 
X        cursub = page;
X      else if (page == 0) {
X        if (cursub == nsubx*nsuby) {
X          if (termin != 0) beepw();
X          plclr();
X          cursub = 1;
X        }
X        else
X          cursub = cursub + 1;
X      }
X      else
X        fatal("Invalid subpage number in PLADV.");
X
X      ssub(nsubx,nsuby,cursub);
X      setsub();
X}
X
SHAR_EOF
echo "End of archive 5 (of 7)"
# if you want to concatenate archives, remove anything after this line
exit