diff options
Diffstat (limited to 'apps')
-rwxr-xr-x | apps/assort | bin | 42893 -> 42893 bytes | |||
-rw-r--r-- | apps/assort.subx | 12 | ||||
-rw-r--r-- | apps/dquotes.subx | 9 | ||||
-rwxr-xr-x | apps/mu | bin | 51632 -> 51644 bytes |
4 files changed, 15 insertions, 6 deletions
diff --git a/apps/assort b/apps/assort index 6070fdc0..0cd18ecf 100755 --- a/apps/assort +++ b/apps/assort Binary files differdiff --git a/apps/assort.subx b/apps/assort.subx index e78cde41..c3a98a87 100644 --- a/apps/assort.subx +++ b/apps/assort.subx @@ -459,13 +459,13 @@ read-segments: # in : (address buffered-file), table : (address stream {string, # clear-stream(line) # read-line-buffered(in, line) # if (line->write == 0) break # end of file - # var word-slice = next-word(line) + # var word-slice = next-word-or-string(line) # if slice-empty?(word-slice) # whitespace # continue # if slice-starts-with?(word-slice, "#") # comment # continue # if slice-equal?(word-slice, "==") - # var segment-name = next-word(line) + # var segment-name = next-word-or-string(line) # segment-slot = leaky-get-or-insert-slice(table, segment-name, row-size=8) # curr-segment = *segment-slot # if curr-segment != 0 @@ -557,12 +557,12 @@ $read-segments:check0: #? # . . discard args #? 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp #? # }}} - # next-word(line, word-slice) + # next-word-or-string(line, word-slice) # . . push args 52/push-edx 51/push-ecx # . . call - e8/call next-word/disp32 + e8/call next-word-or-string/disp32 # . . discard args 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp $read-segments:check1: @@ -667,12 +667,12 @@ $read-segments:check-for-segment-header: # . if (eax == 0) goto check3 3d/compare-eax-and 0/imm32 0f 84/jump-if-equal $read-segments:regular-line/disp32 - # segment-name = next-word(line) + # segment-name = next-word-or-string(line) # . . push args 52/push-edx 51/push-ecx # . . call - e8/call next-word/disp32 + e8/call next-word-or-string/disp32 # . . discard args 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp #? # dump segment name {{{ diff --git a/apps/dquotes.subx b/apps/dquotes.subx index 7e6318cb..8220f582 100644 --- a/apps/dquotes.subx +++ b/apps/dquotes.subx @@ -86,7 +86,16 @@ subx-dquotes: # in : (address buffered-file), out : (address buffered-file) # pseudocode: # var line : (stream byte 512) # var new-data-segment : (handle stream byte) = new-stream(Heap, Segment-size, 1) + # # write(new-data-segment, "== data\n") + # # TODO: When it was originally written dquotes ran before assort, so + # # it assumes lots of segment headers, and emits a new segment of its + # # own. We've since had to reorder the phases (see the explanation + # # for a.assort2 in ntranslate). We could clean up a.assort2 if we + # # conditionally emit the previous line. But this would require + # # teaching dquotes to parse segment headers, so maybe that's not + # # best.. + # # while true # clear-stream(line) # read-line-buffered(in, line) diff --git a/apps/mu b/apps/mu index 3d1738c8..55bb80ce 100755 --- a/apps/mu +++ b/apps/mu Binary files differ |