4 ms·
> Zilog still makes the Z80, which is used in some embedded systems. Still used in the TI range of graphing calculators. Specifically, the TI-84 CE range[0]. I
by vanderZwan 8y ago
> Zilog still makes the Z80, which is used in some embedded systems.
Still used in the TI range of graphing calculators. Specifically, the TI-84 CE range[0]. I can't speak for other countries, but graphing calculators are mandatory in Dutch high schools, and the TI series is the default choice for many (I got a TI 83+ Silver Edition when I was 14, which was "new" at the time - guess my age). I suspect because it's low-powered enough to still require that students Learn The Material too (instead of doing the symbolic calculus through the calculator). Texas Instruments must be having quite a large mark-up on such a dirt-cheap piece of electronic hardware though.
Anyway, because of that, Z80 assembly was my second programming language TI Basic being the first[1]. It really is quite accessible - I mean you basically memorise the entire instruction set after a while because it's so small and simple[2].
Funny enough, I remember when moving to higher level languages that almost every tutorial that I read on warned me that pointers were really, really hard, and I couldn't see why at that point. I guess that if you start from the ground up instead from the top down, some things get easier.
[0] https://en.wikipedia.org/wiki/TI-84_Plus_series https://en.wikipedia.org/wiki/TI-84_Plus_series
[1] https://www.ticalc.org/archives/files/fileinfo/328/32816.html https://www.ticalc.org/archives/files/fileinfo/328/32816.htm...
[2] http://wikiti.brandonw.net/index.php?title=Z80_Instruction_Set http://wikiti.brandonw.net/index.php?title=Z80_Instruction_S...
- cottsak 8y agoI had a similar high school experience. Not as much asm but spent way too many hours writing basic programs on that thing. prob should have spent more time listening in class.... nar! :-D
- setquk 8y agoSame. I wrote a horse racing program on the 82 that I sold to students so they could use it for betting. It was my first profitable software product :) It was lame as crap. Just used the PRNG to multiply one of 5 variables by 10 and then draw them on the screen. Longest number won the race. If you were clever enough you could reseed the RNG and pick a winner every time.
- Bromskloss 8y agoI wrote a solver of quadratic equations that occasionally adjusted the answer to be wrong by a few percent. The plan was to disseminate it to the class. I don't remember to what extent I managed or dared. I have now put my black hat days behind me.
- setquk 8y agoThat’s so incredibly evil that I love it :)
- vanderZwan 8y agoImagine a high-school programming class where they teach you how to program on your calculator. Such a wasted opportunity - I'm pretty sure quite a few people in my class (including myself) would have loved that.
- pjmlp 8y agoI had the same experience with pointers. Started coding with a Timex 2068 back in the day, and went through Z80, 8086, 68000, Basic and Pascal dialects before getting to learn C, nothing special about C pointers.
- vanderZwan 8y agoI mean at that stage you've probably mastered tricks like self-modifying code (I remember learning how to do that for the midpoint circle algorithm, but I can't find the source on-line any more). Pointers are simpler than that.
- pjmlp 8y agoYeah, kind of doing our own JIT, without knowing that was a thing. Pointers are pretty easy when drawing boxes and arrows. Sometimes I wonder if they don't teach them anymore.
- Bromskloss 8y ago> Anyway, because of that, Z80 assembly was my second programming language TI Basic being the first. I didn't have the cable you needed to transfer binaries from a desktop computer to the calculator, and I never finished the cable I tried to build myself from scrap parts. Hence, I never got past the TI Basic, which you could program on the calculator itself. :-) Here's a TI Basic rendering of a sphere (the Moon seen from Earth, say): https://i.imgur.com/xWb1xk2.jpg https://i.imgur.com/xWb1xk2.jpg
- apple4ever 8y agoI had the TI-85, and after BASIC I learned Z80 assembly. I wrote a bunch of programs for that calculator in HS. I love it, and I still love the Z80. So simple yet brilliant.