|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T c
Length: 839 (0x347) Types: TextFile Names: »corplot.c«
└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89 └─⟦e0e3e8967⟧ »./gnuplot.tar.Z« └─⟦01af444b1⟧ └─⟦this⟧ »gnuplot/mainplot/corplot.c« └─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦this⟧ »EUUGD11/euug-87hel/sec1/gnuplot/corplot.c« └─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12 └─⟦63303ae94⟧ »unix3.14/TeX3.14.tar.Z« └─⟦c58930e5c⟧ └─⟦this⟧ »TeX3.14/TeXcontrib/gnuplot/corplot.c«
#include <stdio.h> #include <process.h> #include <dos.h> #define BOUNDARY 32768 #define segment(addr) (FP_SEG(m) + ((FP_OFF(m)+15) >> 4)); #define round(value,boundary) (((value) + (boundary) - 1) & ~((boundary) - 1)) char *malloc(),*realloc(); char prog[] = "gnuplot"; char corscreen[] = "CORSCREEN=0"; main() { register unsigned int segm,start; char *m; if (!(m = malloc(BOUNDARY))) { printf("malloc() failed\n"); exit(1); } segm = segment(m); start = round(segm,BOUNDARY/16); if (realloc(m,BOUNDARY+(start-segm)*16) != m) { printf("can't realloc() memory\n"); exit(2); } if ((segm = start >> 11) >= 8) { printf("not enough room in first 256K\n"); exit(3); } corscreen[sizeof(corscreen)-2] = '0' + segm; if (putenv(corscreen)) perror("putenv"); if (spawnlp(P_WAIT,prog,prog,NULL)) perror("spawnlp"); }