about summary refs log tree commit diff stats
path: root/tools/test_treeshake_translate
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2021-01-24 11:15:09 -0800
committerKartik Agaram <vc@akkartik.com>2021-01-24 19:43:23 -0800
commit09f2f3075a8be46484be2b5900888a8ac4799b75 (patch)
tree595981fd98a11452d4b664afdaff83316df87d39 /tools/test_treeshake_translate
parentdba18f7f6f07840bf981d21a9acabd33f651c860 (diff)
downloadmu-09f2f3075a8be46484be2b5900888a8ac4799b75.tar.gz
7555 - snapshot
While baremetal has been working with Qemu, it's been broken with Bochs
since commit 7547, where we started reading more than 63 sectors (1
track) from disk.

Good to know that Bochs simulates native hardware with so much
verisimilitude!

Unfortunately things aren't fixed yet. The current state:

             - Qemu -                 - Bochs -
  ex2.hex    never switches modes     works
  ex2.subx   never switches modes     works
  ex2.mu     never switches modes     fails unit tests

It sucks that Bochs doesn't have strictly superior verisimilitude
compared to Qemu :(
Diffstat (limited to 'tools/test_treeshake_translate')
0 files changed, 0 insertions, 0 deletions
inenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } .highlight .hll { background-color: #ffffcc } .highlight .c { color: #888888 } /* Comment */ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ .highlight .k { color: #008800; font-weight: bold } /* Keyword */ .highlight .ch { color: #888888 } /* Comment.Hashbang */ .highlight .cm { color: #888888 } /* Comment.Multiline */ .highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ .highlight .cpf { color: #888888 } /* Comment.PreprocFile */ .highlight .c1 { color: #888888 } /* Comment.Single */ .highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
# w3m-like keybindings for Chawan.
# Copy-paste this into your config file, or just include it (place it in
# ~/.config/chawan/w3m.toml, then at the beginning of
# ~/.config/chawan/chawan.toml, include = "w3m.toml".)

[cmd.w3m.buffer]
pageDown = 'n => pager.scrollDown(pager.height * (n ?? 1))'
pageUp = 'n => pager.scrollUp(pager.height * (n ?? 1))'
mark = '''
() => {
	/* id is always the current position; this way we can clear by
	   setting a mark twice at the same position. */
	const id = pager.buffer.cursorx + " " + pager.buffer.cursory;
	if (!pager.getMarkPos(id))
		pager.setMark(id);
	else
		pager.clearMark(id);
}
'''
gotoLine = 'n => pager.gotoLine(n)'
centerColumn = '() => pager.centerColumn()'
centerLine = '() => pager.centerLine()'
prevMark = '''
() => {
	const next = pager.findPrevMark();
	if (next)
		pager.gotoMark(next);
	else
		pager.alert("No mark exists before here");
}
'''
nextMark = '''
() => {
	const next = pager.findNextMark();
	if (next)
		pager.gotoMark(next);
	else
		pager.alert("No mark exists before here");
}
'''

[cmd.w3m.pager]
saveFile = '''
() => {
	if (pager.url.protocol == "file:")
		pager.extern(pager.getEditorCommand(pager.url.pathname))
	else
		pager.alert("Can't edit other than local file");
}
'''
askQuit = '''
() => pager.ask("Do you want to exit Chawan?").then(x => x ? quit() : void(0))
'''

[page]
# Page/cursor movement
' ' = 'cmd.w3m.buffer.pageDown'
C-v = 'cmd.w3m.buffer.pageDown'
b = 'cmd.w3m.buffer.pageUp'
M-v = 'cmd.w3m.buffer.pageUp'
'M-[6~' = 'cmd.w3m.buffer.pageDown'
'M-[5~' = 'cmd.w3m.buffer.pageUp'
C-f = 'cmd.buffer.cursorRight'
C-b = 'cmd.buffer.cursorLeft'
C-n = 'cmd.buffer.cursorDown'
C-p = 'cmd.buffer.cursorUp'
J = 'cmd.buffer.scrollUp'
K = 'cmd.buffer.scrollDown'
'^' = 'cmd.buffer.cursorLineBegin'
C-a = 'cmd.buffer.cursorLineBegin'
'$' = 'cmd.buffer.cursorLineEnd'
C-e = 'cmd.buffer.cursorLineEnd'
w = 'cmd.buffer.cursorNextWord'
W = 'cmd.buffer.cursorWordBegin'
'<' = 'cmd.buffer.pageLeft'
'>' = 'cmd.buffer.pageRight'
'.' = 'cmd.buffer.scrollLeft'
',' = 'cmd.buffer.scrollRight'
g = 'cmd.buffer.gotoLineOrStart'
'M-<' = 'cmd.buffer.cursorFirstLine'
G = 'cmd.buffer.gotoLineOrEnd'
'M->' = 'cmd.buffer.cursorLastLine'
M-g = 'cmd.w3m.buffer.gotoLine'
Z = 'cmd.w3m.buffer.centerColumn'
z = 'cmd.w3m.buffer.centerLine'
C-i = 'cmd.buffer.cursorNextLink'
C-u = 'cmd.buffer.cursorPrevLink'
M-C-i = 'cmd.buffer.cursorPrevLink'
'[' = 'cmd.buffer.cursorNthLink'
']' = 'cmd.buffer.cursorRevNthLink'
# Hyperlink selection
C-j = 'cmd.buffer.click'
C-m = 'cmd.buffer.click'
c = 'cmd.pager.peek'
u = 'cmd.pager.peekCursor'
a = 'cmd.pager.saveLink'
M-C-j = 'cmd.buffer.saveLink'
M-C-m = 'cmd.buffer.saveLink'
I = 'cmd.buffer.viewImage'
#TODO save image
# File and URL-related actions
U = 'cmd.pager.load'
V = 'cmd.pager.load' #TODO file only
#TODO exec shell
# Buffer operations
B = 'cmd.pager.discardBufferPrev'
v = 'cmd.pager.toggleSource'
#TODO edit
C-l = 'cmd.buffer.redraw'
R = 'cmd.pager.reload'
E = 'cmd.pager.editFile'
M-s = 'cmd.pager.saveSource'
#TODO save screen, edit screen
#TODO buffer selection mode
'C-@' = 'cmd.w3m.buffer.mark'
M-p = 'cmd.w3m.buffer.prevMark'
M-n = 'cmd.w3m.buffer.nextMark'
# Search
'/' = 'cmd.pager.searchForward'
C-s = 'cmd.pager.searchForward'
'?' = 'cmd.pager.searchBackward'
C-r = 'cmd.pager.searchBackward'
n = 'cmd.pager.searchNext'
N = 'cmd.pager.searchPrev'
C-w = 'cmd.pager.toggleWrap'
# Misc
#TODO shell out, help file, options, cookies
C-c = 'cmd.pager.cancel'
q = 'cmd.w3m.pager.askQuit'
Q = 'cmd.pager.quit'
C-d = ''

# w3m line editing is equivalent to Chawan's defaults.