File: rel_notes.txt

package info (click to toggle)
tkisem 4.5.12-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 964 kB
  • ctags: 1,372
  • sloc: cpp: 4,844; tcl: 3,047; asm: 1,991; makefile: 335; ansic: 269; sh: 155
file content (155 lines) | stat: -rw-r--r-- 5,397 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155

Release Notes for tkisem

Release 4.5.12

  BUG FIXES

    - Yet more Asserts that cannot be; twice in store.cpp

Release 4.5.11

    - Make the tkisem windows raise themselves when selected from the
      menubar, so we don't lose buried windows so easily.

  BUG FIXES

    - Don't know how old this is, but 'int foo; sscanf(buf,"%i",&foo);'
      can't (any longer) read, e.g., 0xffffffff.  Doing so yields
      0x7fffffff.  sscanf is doing the moral equivalent of strtol()
      (which returns LONG_MAX (==0x7fffffff) on overflow), instead of
      acting like strtoul() (which returns ULONG_MAX, as desired).
      Switch to explicit strtoul() calls.  Also required a hack in
      tkisem to avoid using the result of a tcl scan %i call.

Release 4.5.10

  BUG FIXES

    - Yet one more Assert that cannot be; reading the %y register was
      uncovered in rd_state.cpp.

Release 4.5.9

  BUG FIXES

    - One more latent 'Assert(1,..)' bug uncovered: A missing 'break;'
      let sra instructions fall through into the default case.


Release 4.5.8

  EXTENSIONS and ADDITIONS

    - Heading for usability pretty much on linux only
  
    - Clean up to work at least mostly with Tk 8.0, and probably higher
  
    - Added a linker script, generic/isem_ld.txt, so that we can work
      with a binutils cross assembler/linker again.  It's not that the
      arguments below in 'NEEDED EXTENSIONS' aren't valid (except
      we're abandoning DOS), it's just that writing a new assembler
      that doesn't suck is actually a bit of work.
  
    - Add top-level build/ directory; refactor most of the Makefiles.
  
    - Add a first cut at a configure script that checks for a few
      things, most particularly the existence of isem_ld and isem_as,
      or as modified for Debian sparc-ld and sparc-as.

  BUG FIXES

    - Clean up various compiler warnings.
   
    - Eliminate confusing 'Assert(1,..)' no-ops, e.g., from switch
      default:'s where possible -- but there may still be some
      'Assert(0,..)'s that need to be converted to 'break's.
   
  BUGS/TODO

    - Tclisem is (still?) broken, and is not installed by the make
      process.  tkisem and gxisem appear to work.
    
    - The configure process doesn't make any attempt to figure out all
      the various dynamic loading nonsense appropriate to the
      environment it finds itself in.  At the moment
      build/make.config.in has got Linux-happy values hardcoded into
      all sorts of shared-library type variables.
      
    - It MAY WELL be the case that there are some Assert's that can
      get triggered by LEGITIMATE SPARC CODE in the emulator; I just
      don't know the comparative paths through the code and a SPARC
      chip well enough to judge.  I believe I've got all the possibly
      errant Asserts set up to say 'Please send email to
      isem@cs.unm.edu' if they go off; hopefully this process will
      settle quickly if further slacking of the asserts is needed.


------
OLDER RELEASE NOTES:



NEEDED EXTENSIONS
	the library does not compile with tk4.2 (the gx device needs
	    to be rewritten once again :( 
	write up a user's guide that explains how to use the various
	    versions of isem (tkisem, gxisem, and tclisem)
	create a docs directory in the distribution
	cleanup the Unix autoconfig scripts
	figure out how to build .so's for AIX
	write a real assembler
	    problems with using GNU binutils:
		error messages are not very good for beginners
		difficult to compile in the DOS environment
		the executable is *huge*
		wouldn't be easy to integrate into a "development
			environment"
	clean up the error message interface
	cleanup the tests directory
	add a configuration file 


Release 4.5

    EXTENSIONS and ADDITIONS
	added gxisem and tclisem -- two new scripts based on the
		command line syntax documented in the lab manual	
	most file names use the 8.3 format so things move to DOS ok
	tkisem now compiles and runs under DOS
	tkisem is based on building a dynamic (shared) library which
		can be load'ed into wish4.1 -- this should make it
		easier to build binary distributions
	added a "src/utils" directory to the distribution
	isem_ld -- new with this release
		(previous releases relied on building a cross
		assembler from the GNU binutils distribution)
		Advantages over binutils:
			easily compiled under DOS
			supports page alignment of text and data
				sections (this is useful in the
				isem_rom code)
	isem_nm -- new with this release
	isem_rom simply sets a pointer for TBR (requires the new
		isem_ld with page alignment)
	added a debug display to the File pull-down menu
		this is a first step to making error messages more
		uniform
	disassembly no longer produces "set %r1, %r2"
	disassembly no longer produces "st [%r1+%r2], %r3" for
		"st %r3, [%r1+%r2]"


    BUG FIXES
	setting the timer value to a lower value than the tick count
	    no longer means the future timer interrupts won't happen
	the annul flag is correctly updated in the Registers window
	when you load a file, tkisem is smarter about where the text
	    segment really starts -- this avoids lots of strange
	    instructions in the start of the text display
	tkisem tries to be smarter about which labels it keeps when
	    there are multipls labels for a single value

	fixed a bug in the tkisem script that made displaying the
	    cdregisters lock everything up