5 ms·
Show HN: Avremu – An 8-Bit Microcontroller in Pure LaTeX
- SeanLuke 12y agoTo be pedantic: this code is largely in TeX, not LaTeX.
- stettberger 12y agoThis is true, but largly in TeX and only Parts of it in LaTeX is still LaTeX. But you're right, I did use only a few rudimentary features.
- SeanLuke 12y agoI think this is the minority view of LaTeX: it's built on top of and is a subset of TeX, not a superset. No one would ever consider \def to be LaTeX for example. Not to denigrate what you produced of course.
- RBerenguel 12y agoI've always thought of LaTeX as more of a superset, but I see where you are coming at (I've read the TeXbook)
- grundprinzip 12y agoNice work, though I liked the dataref package even more!
- stettberger 12y agoThe dataref package is intended to be useful (and it acutally is). Avremu was only a long trip in sweden without internet, an editor and a reference manual.
- adhambadr 12y ago"Are you insane? Not that anybody knows of." hahaha that cracked me up, especially that i actually considered the possibility when i read the title.
- Extigy 12y agoThis is mental and I love it.
- userbinator 12y agoThat reminds me of this, a slightly bigger AVR emulating an ARM SoC running Linux: http://dmitry.gr/index.php?r=05.Projects&proj=07.+Linux+on+8bit http://dmitry.gr/index.php?r=05.Projects&proj=07.+Linux+on+8... Emulate that system instead, and now you can theoretically boot a Linux system inside of TeX.
- stettberger 12y agoI already considered that, but until now i did not implement many peripheral devices. But when implemented those, it should be possible. But at the moment i'm rather thinking of an VHDL netlist emulator in TeX.
- xg15 12y agowhy?
- stettberger 12y agoSweden, Too much time, Masterthesis was submitted.
- apricot 12y agoIn the 1990s, when I was in college, I wrote a 6502 emulator in a text editor macro language (the text editor was QEdit, a DOS editor that was popular at the time). It was completely useless but a lot of fun. There was a very low hard limit on the number of jumps (32, if I recall correctly) that complicated things. I eventually had to resort to a two step process, first translating 6502 code to a simpler virtual machine (using and abusing the find-and-replace command), and then executing that simpler code.
- dsugarman 12y agothis is cool and you seem obviously intelligent, have you considered making something people want?
- marvy 12y agosometimes, cool is enough :) I might actually want this though. C is much more convenient than TeX to code in, and yet sometimes you have no choice. Until now.
- msarnoff 12y agoI wonder if this could be modified to control actual hardware? It looks the `\write18` command can be used to execute shell commands if LaTeX is run with the `--shell-escape` option. So in theory you could intercept all writes to the GPIO control registers and use a shell command to send bytes over the serial port to a physical MCU (or something like the SparkFun SPI Shortcut.) Imagine a LaTeX document that, when processed, reads a series of measurements from a sensor over the serial port, then renders nice graphs directly to a PDF! :)
- MechSkep 12y agoI was looking for this workflow for my research, and ended up going with an ipython notebook.
- f137 12y agoWe need more of this.