Drop a wildcard in my edit shortcuts that's getting confused between apps/crenshaw2-1.subx
and apps/crenshaw2-1b.subx. We're pretty much always using the full filename
(excluding .subx extension) anyway.
More tweaking of colors, as far as possible in 256-color terminal mode
that's almost entirely just for me, and beyond that in the generated html
that more people may look at. In the former I have to work with a limited
palette, while I'd like the latter to be more accessible for others.
Evolution of colors:
=== 1
.subxH1Comment { color: #00ffff; }
.subxH2Comment { color: #00afff; }
.subxComment { color: #00afff; }
.subxS1Comment { color: #0080ff; }
.subxS2Comment { color: #0040ff; }
=== 2
sed -i 's/^\.subxH1Comment.*/.subxH1Comment { color:#00ffff; }/' $1.html
sed -i 's/^\.subxH2Comment.*/.subxH2Comment { color:#00bbff; }/' $1.html
sed -i 's/^\.subxComment.*/.subxComment { color:#00bbff; }/' $1.html
sed -i 's/^\.subxS1Comment.*/.subxS1Comment { color:#0098ff; }/' $1.html
sed -i 's/^\.subxS2Comment.*/.subxS2Comment { color:#0070ff; }/' $1.html # slightly too dark
=== 3: http://www.perbang.dk/rgbgradient from start to end
sed -i 's/^\.subxH1Comment.*/.subxH1Comment { color:#00ffff; }/' $1.html
sed -i 's/^\.subxH2Comment.*/.subxH2Comment { color:#00ddff; }/' $1.html
sed -i 's/^\.subxComment.*/.subxComment { color:#00bbff; }/' $1.html
sed -i 's/^\.subxS1Comment.*/.subxS1Comment { color:#0099ff; }/' $1.html
sed -i 's/^\.subxS2Comment.*/.subxS2Comment { color:#0078ff; }/' $1.html
=== 4: drop down to 4 colors
sed -i 's/^\.subxH1Comment.*/.subxH1Comment { color:#00ffff; }/' $1.html
sed -i 's/^\.subxComment.*/.subxComment { color:#00d2ff; }/' $1.html
sed -i 's/^\.subxS1Comment.*/.subxS1Comment { color:#00a4ff; }/' $1.html
sed -i 's/^\.subxS2Comment.*/.subxS2Comment { color:#0078ff; }/' $1.html
=== 4: make final one just a little too dark
sed -i 's/^\.subxH1Comment.*/.subxH1Comment { color:#00ffff; }/' $1.html
sed -i 's/^\.subxComment.*/.subxComment { color:#00cfff; }/' $1.html
sed -i 's/^\.subxS1Comment.*/.subxS1Comment { color:#009fff; }/' $1.html
sed -i 's/^\.subxS2Comment.*/.subxS2Comment { color:#0070ff; }/' $1.html # slightly too dark
=== 5: make darkest shade a little less blue, just at the edge of too dark
sed -i 's/^\.subxH1Comment.*/.subxH1Comment { color:#00ffff; }/' $1.html
sed -i 's/^\.subxComment.*/.subxComment { color:#16ccff; }/' $1.html
sed -i 's/^\.subxS1Comment.*/.subxS1Comment { color:#2d99ff; }/' $1.html
sed -i 's/^\.subxS2Comment.*/.subxS2Comment { color:#4466ff; }/' $1.html # slightly too dark
=== 6: HSV gradient between the same endpoints
sed -i 's/^\.subxH1Comment.*/.subxH1Comment { color:#00ffff; }/' $1.html
sed -i 's/^\.subxComment.*/.subxComment { color:#16bfff; }/' $1.html
sed -i 's/^\.subxS1Comment.*/.subxS1Comment { color:#2d8cff; }/' $1.html
sed -i 's/^\.subxS2Comment.*/.subxS2Comment { color:#4466ff; }/' $1.html # slightly too dark
Crenshaw compiler now runs natively as well.
It turns out I was misreading the Intel manual, and the jump instructions
that I thought take disp16 operands actually take disp32 operands by default
on both i686 and x86_64 processors. The disp16 versions are some holdover
from the 16-bit days.
This was the first time I've used one of these erstwhile-disp16 instructions,
but I still haven't tested most of them. We'll see if we run into future
issues.
Start with an exactly corresponding version to Crenshaw 2-1: single-digit
numbers. The only change: we assume the number is in hex.
The next version now supports multi-digit hex numbers.
I stopped handling disp16 at some point, and using instructions with such
an operand messes up segment alignment when generating ELF binaries.
I don't test my ELF generation. This is a sign that maybe I should start.