asciilifeform: folx w/ nitpicks, thoughts re potential applications, etc. plox to write in!
asciilifeform: theoretically, in naked iron variant, can simply translate the mips page tbl into pc's. but this is for much later.
asciilifeform: much broader range of things you can do, if yer asmism is standalone rather than inlined into gnat etc.
asciilifeform: ( must save/load'em when calling unix to drive console i/o, disk, etc. when under a unix, but on bare irons not even this )
asciilifeform: can reclaim e.g. ebp, r8-15 etc, which normally clobbered by the proc call abi.
asciilifeform: the only thing to add, possibly for n00bz, is the observation that you can actually use all the machine regs, as pictured above, if you dun have any c or other compiled lang in the proggy
asciilifeform: i.e. ffa-style mux for the sim-branch clockwork.
asciilifeform: incidentally when asming on amd (possibly intel also, but i threw out my intel datashits..) can hand-crank the cache when desired.
asciilifeform: it won't even astonish asciilifeform if in the end finds out that purely-interpreter algo actually clocks faster on recent (10y) pc irons than 'dynamic'. cuz fits in l0 cache and dun rewrite executable pages (i.e. dun blow the cache erry time it farts)
asciilifeform: other aspect of this, picture trying to rewrite a 'dynamic' emu like bellard's, to run on e.g. arm.
asciilifeform: ( recall that there's been 2-3 published vulns for it per month, for , what, 5y nao )
asciilifeform: ever tried to read bellard's 'qemu' ? i dunno if decade would be enough to eat it, trb-style, even if did nuffin else.
asciilifeform: in principle possible to add e.g. vga to this, and have pc boot straight into it.
asciilifeform: stack is also statically allotted on warmup, a la ffa.
asciilifeform: in my clockwork there is no heap allocation, and errything that can live in machine reg, does. (the only allocation is one mmap, for the emu-ram, a user-specified x GB chunk, after that 100% regs/stack)
asciilifeform: there is ~not~ a shortage of irons. but there ~is~ a shortage of soft that actually behaves to spec and fitsinhead.
asciilifeform: notably, i reject bellard's approach to emuism , where he 'dynamically recompiles' . imho it aint worth the 9000x moar complex clockwork.
asciilifeform actually scoured 'shithub' & etc. , found none
asciilifeform: strangely enuff, dun seem that any of the game emulator people, ever baked a properly hand-asmed emu for it
asciilifeform: to sorta tie into the 'games' thrd, found out by way of digging for mipsisms, that : 'playstation 1' toy box was apparently a mips (3000) .
asciilifeform: (for instance 1 possible application is mircea_popescu's 'uci'...)
asciilifeform: if folx come up with serious use for item outside of piz shared cluster (where it is imho direly needed) i'ma also do a 64bit mips at some pt.
asciilifeform: ( for n00bs -- why mips? cuz pretty small instr set, and fixed-length codes; and theoretically existing gcc backend. really no other reason. )
asciilifeform: about 2000 loc of (somewhat macroistic) nasm atm, but still within bound of 'fit in head' imho
asciilifeform: you run it as e.g. ./mips disk.img 31337 and connect on latter port, get uart.
asciilifeform: aim is a 'mips 4000' compat. item (for ease of hardwarization, when time comes) if anyone cares. and at some pt will also have to port gnat, cuntoo... to it.☟︎☟︎
asciilifeform: almost all of the sim-instrs fit in amd64's 32byte cache line load.
asciilifeform: in next vacation i'ma wrap it up & genesis.
asciilifeform: hand-massaged asm for pipelineism etc, worx out to <12kB total bin so far.
asciilifeform: emulates errything but the page table mechanism, which is somewhat gnarly even on mips (tho miniscule compared to pc's)☟︎
asciilifeform: it aint ready for primetime tho, must admit
asciilifeform: ftr, during 'vacation' wrote a vehehery rought draft of item prev. discussed in log☝︎☟︎
asciilifeform back to ffaism, after short 'vacation' . will order piz irons in coming 2wk, as the req'd fiatola piles up☟︎
asciilifeform: you can just as dressed, if zipper worx, neh
asciilifeform: diana_coman: funnily enuff i did not even get to take 'graphics' at uni (it ended up choice b/w it and 'operating systems', went with the latter) but i did at one pt eat the classic hughes, foley & van dam b00k
asciilifeform: imho it was The Wrong Thing tho (yes the 2d artist types got to keep their jobs and avoided relearning anyffin, but result is that nao there are 'wooden' monsters, lovingly 'painted', rather than 'tru' 3d...)
asciilifeform: ( consider, e.g., the 'ada-sockets' horror of 'abstraction' replaced in the udp lib )
asciilifeform: naturally only diana_coman can answer this q. but fwiw asciilifeform has yet to encounter a single case where burning the heathen abstraction to the ground and baking new one didn't make problem substantially simpler in the end.
asciilifeform: texturism incidentally is why those 'steam' gamez are 100GB ea.
asciilifeform: i have suspicion that it'd scale fine if the folx baking gpu irons had baked for it (e.g. picture properly-bouncing gouraud tits) . whereas i dun recall a single 'textured' game where critters did not from certain angles look 'wooden'.
asciilifeform: wasn't so much an issue in 640x480 svga but yea
asciilifeform: lba 2 , incidentally, had light sourcing / reflections / etc. and ~also~ not only demanded no gpu, but still ran on 486 dx2 a++
asciilifeform: 'The 3D ojects are not texture mapped (= wrapping textures on a 3D object), but they get their color from gouraud shading' etc
asciilifeform: ( for folx who did not play this msdos mega-adventure -- thing was implemented on entirely diff school of thought re 3dism than what is generally used today )
asciilifeform: and all of this w/out anything resembling a 3d gpu card
asciilifeform: recall, where the hero's robe flowed properly when he fought, etc
asciilifeform to this day wonders how the folx who wrote 'lba' represented theirs☝︎
asciilifeform: makes sense, i suppose thing takes 'this vertex is a joint, with such-and-such polar coord range' etc
asciilifeform: still rly oughta, imho, live as a fairly straightforward seq of numerics
asciilifeform not entirely innocent of subj, has suffered with it
asciilifeform: speaking of which, reportedly huawei's lappy div (supposedly - closing down) made several genuinely linuxable (vs. 'ubuntable') boxen.☟︎
asciilifeform: mircea_popescu: sounds not entirely unlike that other 'great again'(tm)
asciilifeform: serious 'non-vonneuman' box would have no standalone rams at all, but simply buncha cpu , each with small mipslike item surrounded by die 99% fulla sram.
asciilifeform: in asciilifeform's various benchmarkisms (ffalogy etc) found, unsurprisingly, that just about all observed variation in measured performance among current decade of x86 irons, is almost entirely proportional to cache size.
asciilifeform: btw this figure is in errybody's kindergarten textbook, but is ~extremely~ overoptimistic for electrical machine, where if you have long conductor, it also has capacitance & inductance, if you want to vary voltage on opposite end of it, you have to let it discharge... )
asciilifeform: ( recall that light in vacuum goes 30m / ns , and charge in solid conductor -- yet slower )
asciilifeform: errything after that, rolled it onto die
asciilifeform: e.g., last pc that i personally opened that had standalone sram for l2 cache, was a 486 dx2.
asciilifeform: BingoBoingo: from asciilifeform's archaeologies, got hypothesis that market for standalone srams is 99% for repair/reproduction of '80s-'90s designs -- current-day ic which require sram tend to 1) need a few kB, maybe a MB or 2 , and 2) include it on-die