checkpoint milestone on manifest
All fields in both manifest.numbers and missing_manifest.numbers have been filled in. However the data entered needs to be reviewed. Previous efforts made on a spreadsheet line by line basis. What needs to happen next is to review at an entry by entry level. Then a review at the overall manifest level (via full_manifest.numbers) for overall consistency. The 2015/burton/src.doc.rot13 was un-rot13ed to become 2015/burton/src.doc.txt. Updated 2018/poikola and 2019/poikola .gitignore and make clobber to address when the tex file is rendered.
This commit is contained in:
1 parent
a49d1ae396
commit
767f1aeb9d
12 files changed
+224
-215
No files matched your search
@@ -3,7 +3,7 @@
|
||||
|
||||
Calc is a recursive-descent parser. It allocates from the stack deep enough
|
||||
that all expressions are exhausted before the recursion stack depth reaches the
|
||||
allocations. The memory map and source is documented in src.doc.rot13. Tokens
|
||||
allocations. The memory map and source is documented in src.doc.txt. Tokens
|
||||
are encoded using values 0-20, where 0 is an invalid token, 1 is minus, 2 is
|
||||
space, 3 is plus, etc. The necessary constants are derived at the start of the program,
|
||||
using the guarantee that globals are initialized to zero; so a correct null pointer
|
||||
|
||||
@@ -1,67 +0,0 @@
|
||||
zrzbel znc: O [128,v/b] N [128,gbxraf] k [32,urkpbai] b [224,ertvfgref]
|
||||
|
||||
Zrzbel vf "nyybpngrq" sebz gur fgnpx, ol gnxvat n ybpny (fgnpx) inevnoyr
|
||||
naq fhogenpgvat 64x -- gurerol yrnivat cyragl bs ebbz sbe rira eryngviryl
|
||||
ynetr fgnpx senzrf qhevat erphefvba.
|
||||
|
||||
v znva(v,p**) cnefr pbzznaq yvar be fgqva, nffvtazragf, cevag erfhyg, reebe erpbirel
|
||||
|
||||
v64 _ qbg
|
||||
p *N yrkvpny gbxraf
|
||||
p *O vachg ohssre
|
||||
gq P hafvtarq
|
||||
p Q fbzr fgngr orgjrra shapf
|
||||
p *R reebe fgevat, raq cbvagre
|
||||
v64 S() rkce: + - ^ |
|
||||
hp T() aba-ybpny tbgb
|
||||
#q U hafvtarq
|
||||
#q V glcrqrs
|
||||
gq W wzc_ohs
|
||||
p *X cbvagre gb pzq yvar netf
|
||||
gq Y pune
|
||||
i Z(h64) qrgrpg reebef, fnir nafjre va qbg, sbezng erfhyg va qrpvzny naq urk
|
||||
p *A serrovr ahyy cbvagre
|
||||
gq B hafvtarq pune
|
||||
gq C ibvq
|
||||
gq D vag
|
||||
#q E erghea
|
||||
p F flagnk reebe + gbxraf
|
||||
p *G pheerag gbxra cbvagre
|
||||
i H(p*) cevag gur ertvfgref
|
||||
gq I ybat ybat
|
||||
#q J(k) sbe(;k;)
|
||||
gq K ybat - bayl sbe ehyr2fc.p
|
||||
gq L hafvtarq fubeg
|
||||
gq M hafvtarq ybat ybat
|
||||
v64 n qrevirq: 32
|
||||
v64 o qrevirq: 1
|
||||
v64 _o(v64) grez: << >> >>>
|
||||
v64 p qrevirq: 10
|
||||
v64 _p(p*) pbaireg ovanel tybony w gb nfpvv qrpvzny
|
||||
v64 q serrovr: 0
|
||||
i _q(v64) npphzhyngr pbairegrq nfpvv olgrf vagb w va onfr cnffrq va
|
||||
v64 r qrevirq: 256
|
||||
v64 s qrevirq: 2
|
||||
v64 _s() pbaireg sebz nfpvv gb ovanel: fryrpgf pbaireg onfr (10,8,16), erfhyg va w
|
||||
h64 t(h16) olgr fjnc 16-ovgf
|
||||
h64 u(h32) olgr fjnc 32-ovgf
|
||||
v64 v(h64) fryrpg fvmr naq olgr fjnc zvavzny olgrf
|
||||
i _v(p*) pbaqvgvbany cevag
|
||||
v64 w ubyqf cnegvny/npphzhyngrq erfhygf
|
||||
*() x cge-gb-shap-trgpune
|
||||
v _x() trg punef sebz fnirq pzq yvar
|
||||
wo y sbe cnefre reebe erpbirel
|
||||
p z() fpnaf vachg sbe gbxra, vtaberf juvgrfcnpr
|
||||
p a() trg arkg vachg punenpgre
|
||||
v64 *b ertvfgref
|
||||
h32 c(p*) jevgrf gb fgqbhg hagvy ahyy, arjyvar nccraqrq vagryyvtragyl
|
||||
i d(**) vavg
|
||||
v64 e(p) jevgrf p gb fgqbhg
|
||||
v64 f qrevirq: 8
|
||||
v64 g qrevirq: 4
|
||||
v64 h qrevirq: 3
|
||||
p i pheerag vachg gbxra
|
||||
v64 j() ernq sebz fgqva hagvy arjyvar be frzv, fxvcf oynax yvarf + pbzzragf, erghea yra
|
||||
p *k ncgyl anzrq urk pbairefvba gnoyr
|
||||
v64 l() grez: * / % & (<< >> >>>)
|
||||
v64 m() snpgbe ~ ! ? -/+ () INE AHZ QBG
|
||||
@@ -0,0 +1,67 @@
|
||||
memory map: B [128,i/o] A [128,tokens] x [32,hexconv] o [224,registers]
|
||||
|
||||
Memory is "allocated" from the stack, by taking a local (stack) variable
|
||||
and subtracting 64k -- thereby leaving plenty of room for even relatively
|
||||
large stack frames during recursion.
|
||||
|
||||
i main(i,c**) parse command line or stdin, assignments, print result, error recovery
|
||||
|
||||
i64 _ dot
|
||||
c *A lexical tokens
|
||||
c *B input buffer
|
||||
td C unsigned
|
||||
c D some state between funcs
|
||||
c *E error string, end pointer
|
||||
i64 F() expr: + - ^ |
|
||||
uc G() non-local goto
|
||||
#d H unsigned
|
||||
#d I typedef
|
||||
td J jmp_buf
|
||||
c *K pointer to cmd line args
|
||||
td L char
|
||||
v M(u64) detect errors, save answer in dot, format result in decimal and hex
|
||||
c *N freebie null pointer
|
||||
td O unsigned char
|
||||
td P void
|
||||
td Q int
|
||||
#d R return
|
||||
c S syntax error + tokens
|
||||
c *T current token pointer
|
||||
v U(c*) print the registers
|
||||
td V long long
|
||||
#d W(x) for(;x;)
|
||||
td X long - only for rule2sp.c
|
||||
td Y unsigned short
|
||||
td Z unsigned long long
|
||||
i64 a derived: 32
|
||||
i64 b derived: 1
|
||||
i64 _b(i64) term: << >> >>>
|
||||
i64 c derived: 10
|
||||
i64 _c(c*) convert binary global j to ascii decimal
|
||||
i64 d freebie: 0
|
||||
v _d(i64) accumulate converted ascii bytes into j in base passed in
|
||||
i64 e derived: 256
|
||||
i64 f derived: 2
|
||||
i64 _f() convert from ascii to binary: selects convert base (10,8,16), result in j
|
||||
u64 g(u16) byte swap 16-bits
|
||||
u64 h(u32) byte swap 32-bits
|
||||
i64 i(u64) select size and byte swap minimal bytes
|
||||
v _i(c*) conditional print
|
||||
i64 j holds partial/accumulated results
|
||||
*() k ptr-to-func-getchar
|
||||
i _k() get chars from saved cmd line
|
||||
jb l for parser error recovery
|
||||
c m() scans input for token, ignores whitespace
|
||||
c n() get next input character
|
||||
i64 *o registers
|
||||
u32 p(c*) writes to stdout until null, newline appended intelligently
|
||||
v q(**) init
|
||||
i64 r(c) writes c to stdout
|
||||
i64 s derived: 8
|
||||
i64 t derived: 4
|
||||
i64 u derived: 3
|
||||
c v current input token
|
||||
i64 w() read from stdin until newline or semi, skips blank lines + comments, return len
|
||||
c *x aptly named hex conversion table
|
||||
i64 y() term: * / % & (<< >> >>>)
|
||||
i64 z() factor ~ ! ? -/+ () VAR NUM DOT
|
||||
Reference in new issue
Block a user