Codebase list gtkwave / upstream/3.3.101
Imported Upstream version 3.3.101 أحمد المحمودي (Ahmed El-Mahmoudy) 4 years ago
21 changed file(s) with 231 addition(s) and 34 deletion(s). Raw diff Collapse all Expand all
17001700 Ensure Show-Change regenerates analog traces.
17011701 Added braces inside Tcl source command to allow spaces in
17021702 filenames for Tcl scripts.
1703 3.3.101 08may19 Added gtkwave::getFacDir, gtkwave::getFacVtype, and
1704 gtkwave::getFacDtype Tcl accessor functions that function
1705 similar to gtkwave::getFacName.
1706 Pair $end with $dumpvars in VCD writers.
1707 Make %.16g printing in baseconvert.c more resistant to power
1708 of 10 roundoff errors.
1709 Remove register keyword where applicable as is deprecated.
1710 Added --saveonexit gtkwave command line option.
00 ##########################################################################
11
2 GTKWave 3.3.100 Wave Viewer is Copyright (C) 1999-2019 Tony Bybell.
2 GTKWave 3.3.101 Wave Viewer is Copyright (C) 1999-2019 Tony Bybell.
33 Portions of GTKWave are Copyright (C) 1999-2019 Udi Finkelstein.
44 Context support is Copyright (C) 2007-2019 Kermin Elliott Fleming.
55 Trace group support is Copyright (C) 2009-2019 Donald Baltus.
00 #! /bin/sh
11 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.69 for gtkwave 3.3.100.
2 # Generated by GNU Autoconf 2.69 for gtkwave 3.3.101.
33 #
44 # Report bugs to <bybell@rocketmail.com>.
55 #
579579 # Identity of this package.
580580 PACKAGE_NAME='gtkwave'
581581 PACKAGE_TARNAME='gtkwave'
582 PACKAGE_VERSION='3.3.100'
583 PACKAGE_STRING='gtkwave 3.3.100'
582 PACKAGE_VERSION='3.3.101'
583 PACKAGE_STRING='gtkwave 3.3.101'
584584 PACKAGE_BUGREPORT='bybell@rocketmail.com'
585585 PACKAGE_URL=''
586586
14041404 # Omit some internal or obsolete options to make the list less imposing.
14051405 # This message is too long to be a string in the A/UX 3.1 sh.
14061406 cat <<_ACEOF
1407 \`configure' configures gtkwave 3.3.100 to adapt to many kinds of systems.
1407 \`configure' configures gtkwave 3.3.101 to adapt to many kinds of systems.
14081408
14091409 Usage: $0 [OPTION]... [VAR=VALUE]...
14101410
14701470
14711471 if test -n "$ac_init_help"; then
14721472 case $ac_init_help in
1473 short | recursive ) echo "Configuration of gtkwave 3.3.100:";;
1473 short | recursive ) echo "Configuration of gtkwave 3.3.101:";;
14741474 esac
14751475 cat <<\_ACEOF
14761476
16291629 test -n "$ac_init_help" && exit $ac_status
16301630 if $ac_init_version; then
16311631 cat <<\_ACEOF
1632 gtkwave configure 3.3.100
1632 gtkwave configure 3.3.101
16331633 generated by GNU Autoconf 2.69
16341634
16351635 Copyright (C) 2012 Free Software Foundation, Inc.
22732273 This file contains any messages produced by compilers while
22742274 running configure, to aid debugging if configure makes a mistake.
22752275
2276 It was created by gtkwave $as_me 3.3.100, which was
2276 It was created by gtkwave $as_me 3.3.101, which was
22772277 generated by GNU Autoconf 2.69. Invocation command line was
22782278
22792279 $ $0 $@
31403140
31413141 # Define the identity of the package.
31423142 PACKAGE='gtkwave'
3143 VERSION='3.3.100'
3143 VERSION='3.3.101'
31443144
31453145
31463146 cat >>confdefs.h <<_ACEOF
1149811498 # report actual input values of CONFIG_FILES etc. instead of their
1149911499 # values after options handling.
1150011500 ac_log="
11501 This file was extended by gtkwave $as_me 3.3.100, which was
11501 This file was extended by gtkwave $as_me 3.3.101, which was
1150211502 generated by GNU Autoconf 2.69. Invocation command line was
1150311503
1150411504 CONFIG_FILES = $CONFIG_FILES
1156411564 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
1156511565 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
1156611566 ac_cs_version="\\
11567 gtkwave config.status 3.3.100
11567 gtkwave config.status 3.3.101
1156811568 configured by $0, generated by GNU Autoconf 2.69,
1156911569 with options \\"\$ac_cs_config\\"
1157011570
11 # Process this file with autoconf to produce a configure script.
22
33 AC_PREREQ(2.59)
4 AC_INIT(gtkwave, 3.3.100, bybell@rocketmail.com)
4 AC_INIT(gtkwave, 3.3.101, bybell@rocketmail.com)
55 AC_CONFIG_SRCDIR([src/vcd.c])
66 AM_INIT_AUTOMAKE
77 AC_CONFIG_HEADER([config.h])
77 <key>CFBundleExecutable</key>
88 <string>gtkwave</string>
99 <key>CFBundleGetInfoString</key>
10 <string>3.3.100, (C) 1999-2019 Tony Bybell http://gtkwave.sourceforge.net</string>
10 <string>3.3.101, (C) 1999-2019 Tony Bybell http://gtkwave.sourceforge.net</string>
1111 <key>CFBundleIconFile</key>
1212 <string>gtkwave.icns</string>
1313 <key>CFBundleIdentifier</key>
1717 <key>CFBundlePackageType</key>
1818 <string>APPL</string>
1919 <key>CFBundleShortVersionString</key>
20 <string>3.3.100</string>
20 <string>3.3.101</string>
2121 <key>CFBundleSignature</key>
2222 <string>????</string>
2323 <key>CFBundleVersion</key>
24 <string>3.3.100</string>
24 <string>3.3.101</string>
2525 <key>NSHumanReadableCopyright</key>
2626 <string>Copyright 1999 - 2019 Tony Bybell, GNU General Public License.</string>
2727 <key>LSMinimumSystemVersion</key>
Binary diff not shown
1818
1919 for {set i 0} {$i < $nfacs } {incr i} {
2020 set facname [ gtkwave::getFacName $i ]
21
22 # set facdir [ gtkwave::getFacDir $i ]
23 # set facvtype [ gtkwave::getFacVtype $i ]
24 # set facdtype [ gtkwave::getFacDtype $i ]
25 # puts "facname: $facname, facdir: $facdir, facvtype: $facvtype, facdtype: $facdtype"
26
2127 set indx [ string first "\[1:48\]" $facname ]
2228 if {$indx == -1} {
2329 set indx [ string first clk $facname ]
0 .TH "GTKWAVE" "1" "3.3.98" "Anthony Bybell" "Simulation Wave Viewer"
0 .TH "GTKWAVE" "1" "3.3.101" "Anthony Bybell" "Simulation Wave Viewer"
11 .SH "NAME"
22 .LP
33 gtkwave \- Visualization tool for VCD, LXT, LXT2, VZT, FST, and GHW files
116116 \fB\-5\fR,\fB\-\-sstexclude\fR
117117 Specify sst exclusion filter filename.
118118 .TP
119 \fB\-7\fR,\fB\-\-saveonexit\fR
120 At exit, a requester is brought up to prompt user to write a save file. Canceling the requester prevents from writing the file.
121 .TP
119122 \fB\-I\fR,\fB\-\-interactive\fR
120123 Specifies that "interactive" VCD mode is to be used which allows a viewer to navigate a VCD trace while GTKWave is processing the VCD file.
121124 When this option is used, the filename is overloaded such that it is the hexadecimal value for the shared memory ID of a writer.
647647 void ClearTraces(void);
648648 void ClearGroupTraces(Trptr t);
649649
650 #endif
651
650 char *varxt_fix(char *s);
651
652 #endif
167167 }
168168
169169
170 static void dpr_e16(char *str, double d)
171 {
172 char *buf16;
173 char buf15[24];
174 int l16;
175 int l15;
176
177 buf16 = str;
178 buf16[23] = 0;
179 l16 = snprintf(buf16, 24, "%.16g", d);
180 if(l16 >= 18)
181 {
182 buf15[23] = 0;
183 l15 = snprintf(buf15, 24, "%.15g", d);
184 if((l16-l15) > 3)
185 {
186 strcpy(str, buf15);
187 }
188 }
189 }
190
191
170192 static void cvt_fpsdec(Trptr t, TimeType val, char *os, int len, int nbits)
171193 {
172194 (void)nbits; /* number of bits shouldn't be relevant here as we're going through a fraction */
203225 rfrac = 0.0;
204226 }
205227
206 sprintf(dbuf, "%.16g", rfrac);
228 dpr_e16(dbuf, rfrac); /* sprintf(dbuf, "%.16g", rfrac); */
207229 char *dot = strchr(dbuf, '.');
208230
209231 if(dot && (dbuf[0] == '0'))
237259 rfrac = 0.0;
238260 }
239261
240 sprintf(dbuf, "%.16g", rfrac);
262 dpr_e16(dbuf, rfrac); /* sprintf(dbuf, "%.16g", rfrac); */
241263 char *dot = strchr(dbuf, '.');
242264 if(dot && (dbuf[0] == '0'))
243265 {
747769 if(nbits==64)
748770 {
749771 memcpy(&d, &utt, sizeof(double));
750 sprintf(os, "%.16g", d);
772 dpr_e16(os, d); /* sprintf(os, "%.16g", d); */
751773 }
752774 else
753775 {
865887
866888 if(d)
867889 {
868 sprintf(rv,"%.16g",*d);
890 dpr_e16(rv, *d); /* sprintf(rv,"%.16g",*d); */
869891 }
870892 else
871893 {
14961518 if(nbits==64)
14971519 {
14981520 memcpy(&d, &utt, sizeof(double));
1499 sprintf(os, "%.16g", d);
1521 dpr_e16(os, d); /* sprintf(os, "%.16g", d); */
15001522 }
15011523 else
15021524 {
13801380 0, /* ruler_origin */
13811381 0, /* ruler_step */
13821382 0, /* fill_waveform */
1383 FALSE, /*save_on_exit */
13831384
13841385
13851386 /*
19361937
19371938 new_globals->logfiles = GLOBALS->logfiles; /* this value is a ** chameleon! malloc'd region is outside debug.c control! */
19381939 new_globals->sst_dbl_action_type = GLOBALS->sst_dbl_action_type;
1940 new_globals->save_on_exit = GLOBALS->save_on_exit;
19391941
19401942 strcpy2_into_new_context(new_globals, &new_globals->argvlist, &GLOBALS->argvlist);
19411943 strcpy2_into_new_context(new_globals, &new_globals->editor_name, &GLOBALS->editor_name);
28622864
28632865 GLOBALS->hier_ignore_escapes = g_old->hier_ignore_escapes;
28642866 GLOBALS->sst_dbl_action_type = g_old->sst_dbl_action_type;
2867 GLOBALS->save_on_exit = g_old->save_on_exit;
28652868
28662869 gtk_notebook_set_current_page(GTK_NOTEBOOK(GLOBALS->notebook), GLOBALS->this_context_page);
28672870 }
13691369 TimeType ruler_origin;
13701370 TimeType ruler_step;
13711371 char fill_waveform;
1372 gboolean save_on_exit;
13721373
13731374
13741375 /*
660660 }
661661
662662
663 #ifndef FST_DYNAMIC_ALIAS2_DISABLE
663664 static int fstWriterSVarint(FILE *handle, int64_t v)
664665 {
665666 unsigned char buf[15]; /* ceil(64/7) = 10 + sign byte padded way up */
685686 fstFwrite(buf, len, 1, handle);
686687 return(len);
687688 }
689 #endif
688690
689691
690692 /***********************/
48074809 int packtype;
48084810 unsigned char *mc_mem = NULL;
48094811 uint32_t mc_mem_len; /* corresponds to largest value encountered in chain_table_lengths[i] */
4812 int dumpvars_state = 0;
48104813
48114814 if(!xc) return(0);
48124815
48164819
48174820 if(fv)
48184821 {
4819 fprintf(fv, "$dumpvars\n");
48204822 #ifndef FST_WRITEX_DISABLE
48214823 fflush(fv);
48224824 setvbuf(fv, (char *) NULL, _IONBF, 0); /* even buffered IO is slow so disable it and use our own routines that don't need seeking */
49634965
49644966 if(beg_tim)
49654967 {
4968 if(dumpvars_state == 1) { wx_len = sprintf(wx_buf, "$end\n"); fstWritex(xc, wx_buf, wx_len); dumpvars_state = 2; }
49664969 wx_len = sprintf(wx_buf, "#%" PRIu64 "\n", beg_tim);
49674970 fstWritex(xc, wx_buf, wx_len);
4971 if(!dumpvars_state) { wx_len = sprintf(wx_buf, "$dumpvars\n"); fstWritex(xc, wx_buf, wx_len); dumpvars_state = 1; }
49684972 }
49694973 if((xc->num_blackouts)&&(cur_blackout != xc->num_blackouts))
49704974 {
53975401 }
53985402 }
53995403
5404 if(dumpvars_state == 1) { wx_len = sprintf(wx_buf, "$end\n"); fstWritex(xc, wx_buf, wx_len); dumpvars_state = 2; }
54005405 wx_len = sprintf(wx_buf, "#%" PRIu64 "\n", time_table[i]);
54015406 fstWritex(xc, wx_buf, wx_len);
5407 if(!dumpvars_state) { wx_len = sprintf(wx_buf, "$dumpvars\n"); fstWritex(xc, wx_buf, wx_len); dumpvars_state = 1; }
54025408
54035409 if((xc->num_blackouts)&&(cur_blackout != xc->num_blackouts))
54045410 {
247247 /**************************************
248248 * Common functions
249249 **************************************/
250 static unsigned LZ4_NbCommonBytes (register size_t val)
250 static unsigned LZ4_NbCommonBytes (size_t val)
251251 {
252252 if (LZ4_isLittleEndian())
253253 {
3535 int flat_earth = 0;
3636 int notruncate = 0;
3737 static FILE *fv = NULL;
38 int dumpvars_state = 0;
3839
3940 extern void free_hier(void);
4041 extern char *fv_output_hier(FILE *fv, char *name);
126127 }
127128
128129 vcd_prevtime = *pnt_time;
130 if(dumpvars_state == 1) { fprintf(fv, "$end\n"); dumpvars_state = 2; }
129131 fprintf(fv, "#"LXT2_RD_LLD"\n", *pnt_time);
132 if(!dumpvars_state) { fprintf(fv, "$dumpvars\n"); dumpvars_state = 1; }
130133 }
131134
132135 if(!(*pnt_value)[0])
289292 }
290293
291294 fprintf(fv, "$enddefinitions $end\n");
292 fprintf(fv, "$dumpvars\n");
293295
294296 vcd_prevtime = lxt2_rd_get_start_time(lt)-1;
295297
297299
298300 if(vcd_prevtime!=lxt2_rd_get_end_time(lt))
299301 {
302 if(dumpvars_state == 1) { fprintf(fv, "$end\n"); dumpvars_state = 2; }
300303 fprintf(fv, "#"LXT2_RD_LLD"\n", lxt2_rd_get_end_time(lt));
301304 }
302305
3636 static int vectorize = 0;
3737 static int notruncate = 0;
3838 static FILE *fv = NULL;
39 int dumpvars_state = 0;
3940
4041 extern void free_hier(void);
4142 extern char *fv_output_hier(FILE *fv, char *name);
119120 if(vcd_prevtime != *pnt_time)
120121 {
121122 vcd_prevtime = *pnt_time;
123 if(dumpvars_state == 1) { fprintf(fv, "$end\n"); dumpvars_state = 2; }
122124 fprintf(fv, "#"VZT_RD_LLD"\n", *pnt_time);
125 if(!dumpvars_state) { fprintf(fv, "$dumpvars\n"); dumpvars_state = 1; }
123126 }
124127
125128 if(!(*pnt_value)[0])
289292 }
290293
291294 fprintf(fv, "$enddefinitions $end\n");
292 fprintf(fv, "$dumpvars\n");
293295
294296 vcd_prevtime = vzt_rd_get_start_time(lt)-1;
295297
297299
298300 if(vcd_prevtime!=vzt_rd_get_end_time(lt))
299301 {
302 if(dumpvars_state == 1) { fprintf(fv, "$end\n"); dumpvars_state = 2; }
300303 fprintf(fv, "#"VZT_RD_LLD"\n", vzt_rd_get_end_time(lt));
301304 }
302305
125125 GLOBALS->zoom_dyne = g_old->zoom_dyne;
126126 GLOBALS->hier_ignore_escapes = g_old->hier_ignore_escapes;
127127 GLOBALS->sst_dbl_action_type = g_old->sst_dbl_action_type;
128 GLOBALS->save_on_exit = g_old->save_on_exit;
128129
129130 reformat_time(timestr, GLOBALS->tims.first + GLOBALS->global_time_offset, GLOBALS->time_dimension);
130131 gtk_entry_set_text(GTK_ENTRY(GLOBALS->from_entry),timestr);
706707 GLOBALS->do_hier_compress = old_g->do_hier_compress;
707708 GLOBALS->disable_auto_comphier = old_g->disable_auto_comphier;
708709 GLOBALS->sst_dbl_action_type = old_g->sst_dbl_action_type;
710 GLOBALS->save_on_exit = old_g->save_on_exit;
709711
710712 strcpy2_into_new_context(GLOBALS, &GLOBALS->sst_exclude_filename, &old_g->sst_exclude_filename);
711713
830832 {"restore", 0, 0, '3'},
831833 {"rcvar", 1, 0, '4'},
832834 {"sstexclude", 1, 0, '5'},
835 {"saveonexit", 0, 0, '7'},
833836 {0, 0, 0, 0}
834837 };
835838
836 c = getopt_long (argc, argv, "zf:Fon:a:Ar:dl:s:e:c:t:NS:vVhxX:MD:IgCLR:P:O:WT:1:2:34:5:", long_options,
839 c = getopt_long (argc, argv, "zf:Fon:a:Ar:dl:s:e:c:t:NS:vVhxX:MD:IgCLR:P:O:WT:1:2:34:5:7", long_options,
837840 &option_index);
838841
839842 if (c == -1) break; /* no more args */
10551058 }
10561059 GLOBALS->sst_exclude_filename = strdup_2(optarg);
10571060 }
1061 break;
1062
1063 case '7':
1064 GLOBALS->save_on_exit = TRUE;
10581065 break;
10591066
10601067 case 's':
23572357 );
23582358 return;
23592359 }
2360
2361 if(GLOBALS->save_on_exit) { menu_write_save_file(NULL, 0, NULL); }
23602362
23612363 if(!GLOBALS->enable_fast_exit)
23622364 {
84918493 (void)widget;
84928494 (void)data;
84938495
8496 if(GLOBALS->save_on_exit) { menu_write_save_file(NULL, 0, NULL); }
8497
84948498 if(!GLOBALS->enable_fast_exit)
84958499 {
84968500 simplereqbox("Quit Program",300,"Do you really want to quit?","Yes", "No", GTK_SIGNAL_FUNC(menu_quit_callback), 1);
239239 aobj = Tcl_NewStringObj(hfacname, -1);
240240 Tcl_SetObjResult(interp, aobj);
241241 if(was_packed) free_2(hfacname);
242 }
243 }
244 else
245 {
246 return(gtkwavetcl_badNumArgs(clientData, interp, objc, objv, 1));
247 }
248
249 return(TCL_OK);
250 }
251
252 static int gtkwavetcl_getFacDir(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
253 {
254 Tcl_Obj *aobj;
255
256 if(objc == 2)
257 {
258 char *s = get_Tcl_string(objv[1]);
259 int which = atoi(s);
260
261 if((which >= 0) && (which < GLOBALS->numfacs))
262 {
263 WAVE_NODEVARDIR_STR
264 int vardir = GLOBALS->facs[which]->n->vardir; /* two bit already chops down to 0..3, but this doesn't hurt */
265 if((vardir < 0) || (vardir > ND_DIR_MAX))
266 {
267 vardir = 0;
268 }
269
270 aobj = Tcl_NewStringObj(vardir_strings[vardir], -1);
271 Tcl_SetObjResult(interp, aobj);
272 }
273 }
274 else
275 {
276 return(gtkwavetcl_badNumArgs(clientData, interp, objc, objv, 1));
277 }
278
279 return(TCL_OK);
280 }
281
282
283 #ifndef WAVE_USE_GTK2
284 /* truncate VHDL types to string directly after final '.' */
285 char *varxt_fix(char *s)
286 {
287 char *pnt = strrchr(s, '.');
288 return(pnt ? (pnt+1) : s);
289 }
290 #endif
291
292 static int gtkwavetcl_getFacVtype(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
293 {
294 Tcl_Obj *aobj;
295
296 if(objc == 2)
297 {
298 char *s = get_Tcl_string(objv[1]);
299 int which = atoi(s);
300
301 if((which >= 0) && (which < GLOBALS->numfacs))
302 {
303 WAVE_NODEVARTYPE_STR
304 WAVE_NODEVARDATATYPE_STR
305 unsigned int varxt;
306 char *varxt_pnt;
307 int vartype;
308 int vardt;
309
310 varxt = GLOBALS->facs[which]->n->varxt;
311 varxt_pnt = varxt ? varxt_fix(GLOBALS->subvar_pnt[varxt]) : NULL;
312
313 vartype = GLOBALS->facs[which]->n->vartype;
314 if((vartype < 0) || (vartype > ND_VARTYPE_MAX))
315 {
316 vartype = 0;
317 }
318
319 vardt = GLOBALS->facs[which]->n->vardt;
320 if((vardt < 0) || (vardt > ND_VDT_MAX))
321 {
322 vardt = 0;
323 }
324
325 aobj = Tcl_NewStringObj( (((GLOBALS->supplemental_datatypes_encountered) && (!GLOBALS->supplemental_vartypes_encountered)) ?
326 (varxt ? varxt_pnt : vardatatype_strings[vardt]) : vartype_strings[vartype]), -1);
327 Tcl_SetObjResult(interp, aobj);
328 }
329 }
330 else
331 {
332 return(gtkwavetcl_badNumArgs(clientData, interp, objc, objv, 1));
333 }
334
335 return(TCL_OK);
336 }
337
338 static int gtkwavetcl_getFacDtype(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
339 {
340 Tcl_Obj *aobj;
341
342 if(objc == 2)
343 {
344 char *s = get_Tcl_string(objv[1]);
345 int which = atoi(s);
346
347 if((which >= 0) && (which < GLOBALS->numfacs))
348 {
349 WAVE_NODEVARTYPE_STR
350 WAVE_NODEVARDATATYPE_STR
351 unsigned int varxt;
352 char *varxt_pnt;
353 int vardt;
354
355 varxt = GLOBALS->facs[which]->n->varxt;
356 varxt_pnt = varxt ? varxt_fix(GLOBALS->subvar_pnt[varxt]) : NULL;
357
358 vardt = GLOBALS->facs[which]->n->vardt;
359 if((vardt < 0) || (vardt > ND_VDT_MAX))
360 {
361 vardt = 0;
362 }
363
364 aobj = Tcl_NewStringObj( varxt ? varxt_pnt : vardatatype_strings[vardt], -1);
365 Tcl_SetObjResult(interp, aobj);
242366 }
243367 }
244368 else
21302254 {"getDisplayedSignals", gtkwavetcl_getDisplayedSignals},
21312255 {"getDumpFileName", gtkwavetcl_getDumpFileName},
21322256 {"getDumpType", gtkwavetcl_getDumpType},
2257 {"getFacDir", gtkwavetcl_getFacDir},
2258 {"getFacDtype", gtkwavetcl_getFacDtype},
21332259 {"getFacName", gtkwavetcl_getFacName},
2260 {"getFacVtype", gtkwavetcl_getFacVtype},
21342261 {"getFontHeight", gtkwavetcl_getFontHeight},
21352262 {"getFromEntry", gtkwavetcl_getFromEntry},
21362263 {"getHierMaxLevel", gtkwavetcl_getHierMaxLevel},
147147 */
148148 static int tclFindElement(const char* list, const char** elementPtr,
149149 const char** nextPtr, int* sizePtr, int *bracePtr) {
150 register const char *p;
150 const char *p;
151151 int openBraces = 0;
152152 int inQuotes = 0;
153153 int size;
281281 */
282282 static void tclCopyAndCollapse(int count, const char *src, char *dst)
283283 {
284 register char c;
284 char c;
285285 int numRead;
286286
287287 for (c = *src; count > 0; src++, c = *src, count--) {
321321 char** zSplitTclList(const char* list, int* argcPtr) {
322322 char** argv;
323323 const char* l;
324 register char* p;
324 char* p;
325325 int size, i, ok, elSize, brace;
326326 const char *element;
327327
421421 #define BRACES_UNMATCHED 4
422422
423423 static int tclScanElement(const char* string, int* flagPtr) {
424 register const char *p;
424 const char *p;
425425 int nestingLevel = 0;
426426 int flags = 0;
427427
501501 */
502502 static int tclConvertElement(const char* src, char* dst, int flags)
503503 {
504 register char *p = dst;
504 char *p = dst;
505505
506506 if ((src == NULL) || (*src == 0)) {
507507 p[0] = '{';
363363 struct lt_trace *lt = NULL;
364364 int lxt = (export_typ == WAVE_EXPORT_LXT);
365365 int is_trans = (export_typ == WAVE_EXPORT_TRANS);
366 int dumpvars_state = 0;
366367
367368 if(export_typ == WAVE_EXPORT_TIM)
368369 {
636637 free_hier();
637638
638639 w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "$enddefinitions $end\n");
639 w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "$dumpvars\n");
640640 }
641641
642642 /* value changes */
667667 }
668668 else
669669 {
670 if(dumpvars_state == 1) { w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "$end\n"); dumpvars_state = 2; }
670671 w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "#"TTFormat"\n", tnorm);
672 if(!dumpvars_state) { w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "$dumpvars\n"); dumpvars_state = 1; }
671673 }
672674 prevtime = GLOBALS->hp_vcd_saver_c_1[0]->hist->time;
673675 }
785787 }
786788 else
787789 {
790 if(dumpvars_state == 1) { w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "$end\n"); dumpvars_state = 2; }
788791 w32redirect_fprintf(is_trans, GLOBALS->f_vcd_saver_c_1, "#"TTFormat"\n", GLOBALS->max_time / GLOBALS->time_scale);
789792 }
790793 }