Coding inspiration
Will the give out the source code for Elite?
The generation of Britons who honed their skills on 8-bit micros can revisit a well-spent youth. The BBC has put 129 educational computer programmes online, many from the early 1980s. "Is British industry falling behind in its use of silicon chip technology?" asked Bernard Falk in March 1980 – for example. It's part of the BBC …
Wasn't Elite written directly in Assembler, in which case, you already have 90% of the the source code :-)
OK, there may be a few labels and the comments missing, but that's not hard to figure out when you start reading the code and work out what it does.
Not that I'll ever admit to doing my fair share of reverse engineering on things to figure out how they work and to tweak them to do something slightly different.
For those who've not seen it, x64dbg is worth a look.
Ian Bell, Elite's coauthor, has been offering the source for download for years, along with what was produced as to ship designs for a putative sequel.
If memory serves, they used the assembler built into the BBC's BASIC. So it's a few different files that when run produce parts of the whole.
... and it took me a while to find but Elite's source was transcribed to C and made available for then-modern platforms back at the turn of the millennium by Christian Pinder, but then taken down at the request of Elite's other coauthor, David Braben.
Nevertheless, that conversion remains available thanks to the persistence of anything ever put onto the internet, and Github. It's probably easier to digest than the original assembly though the games library it relies on to access the display, read the keyboard, etc, has introduced significant breaking changes in the interim. It shouldn't be a big job to replace though.
Ian Bell had an officially unofficial rewrite of the trading engine in C:
http://www.elitehomepage.org/text/index.htm
...so if you feel like trying to write scripts for ultra-efficient trading routes in order to achieve galactic financial domination, this is for you.
You can also find the full text of the Elite novella, by noted fantasy author Robert Holdstock: http://www.elitehomepage.org/dkwheel.htm
And you can also find the as-yet-unpublished Elite musical: http://www.iancgbell.clara.net/elite/musical/index.htm
I grabbed a copy of the source code to Christan Pinder's "Eltite: The New Kind" back when Braben had it taken down despite (or perhaps because of) Bell's endorsement. I've kept it compiling as newer versions of the Allegro library have been released, so I guess I should send a pull request to that Github repo.
"...I grabbed a copy of the source code to Christan Pinder's "Eltite: The New Kind" back when Braben had it taken down despite (or perhaps because of) Bell's endorsement. I've kept it compiling as newer versions of the Allegro library have been released, so I guess I should send a pull request to that Github repo...."
I believe he asked for it to be taken down because someone used the source to create a copy on a handheld device, and was selling them - in the back of my mind, it might even have been flogged as some king of "official" version.
Believe it or not my Speccy clone actually came with the full circuit diagram in its manual
The BBC B Advanced User Guide came with not just a circuit diagram, but there was also the better part of a chapter explaining the more advanced functions (like the processor speed switching from 2MHz to 1MHz for slower peripherals), and described adding interfaces. It also detailed every sodding OS function.
I have to explain "coding" (as it's now called) to children in the school I work.
Given that I'm the only person on-site with even a remotest possibility of being able to be thrown into a language and knock up working code without having to copy/paste examples or spend hours doing so (and I'm not even a teacher), coding is a dying art.
It wasn't because we had all the resources. It's because we DIDN'T. All I started on was a Sinclair BASIC manual. Outside of that there was NOTHING. It wasn't until years later I got started on INPUT magazine and could actually see other people's code. By then, I was tinkering with assembler, and not long after was playing with C, DOS programming (Ralf Brown, I love you, a single, off-line, downloadable list of interrupts and what they did!), etc. etc.
But it's because we didn't have Google, StackOverflow, cut/paste, etc. We had to work out what we were doing and make it work without help. There were no debuggers to speak of, there was a huge time penalty on each test you did, and you had to learn how graphics, sound, data loading, and all the other parts actually worked.
I glanced at an 11-year-old's Python script from a distance a year or so ago and spotted syntax errors, loop bounding problems, type-conversion problems, etc. all in a tiny glance.
Running coding clubs with the IT teachers (who can sort-of-program but you wouldn't be able to get anything productive out of them and it would take them forever without IDE assistance and copy/paste examples), it's obvious that precisely one child I've seen in 20-years of working in schools could have a career in actual coding.
They don't get what's happening behind things like "physics engines" (they love the word engine, they hate that I just explain it just means "bit of code"), 3D matrix transforms, HID device inputs, SIMD instructions, etc. They just don't understand that everything is manipulation of numbers, that's all, and so they need to work out what number that joystick is going to send, what number to act upon, and what to do about it. You don't need maths, necessarily, but you do have to work out "well, how is a 3D object represented as just numbers?", and they can't. They struggle with the concept of bitmaps and RGBA. They don't get that the physics is just numbers applied to simulate velocity, acceleration, mass, force, etc. They don't get that audio decoding involves things like Fourier transforms and conversion to frequencies and then oscillations at those frequencies.
They have a total disconnect between what it is doing, and how computers work.
An example I like to use... and I don't claim this is a good way to do things, but most people will figure it out. I'll write it in pseudocode ("because that's like a language, is this correct pseudocode Sir? Can I get a pseudocode compiler?"....):
function Switch_Player()
{
current_player = 3 - current_player;
}
Kids just can't parse it. They don't get what it's doing. They don't understand how it works. They can't infer it.
But when I was their age, I used tricks like that all the time to reduce the byte-size of code that switched players on things like TI-85 calculators and the ZX Spectrum. And, without them being anything genius, I often made my own tricks without referencing anything else, to do things I needed to do by sitting and working them out (e.g. the correlation between pits on a dice and the binary representation of a number, a way to shuffle a pack of cards stored in an array, etc.)
It's all "old-hat that they'll never need", agreed, but I'm more worried about the loss of the discovery process. If you aren't in an intellectual struggle, if you aren't challenged, if you can just pull down an API that does it all for you, you aren't going to get the impetus to learn things deeply.
I have a career in IT because I've spent my life understanding computers, and getting them to do what I need even when that's not available with anything in front of me. They won't have that kind of impetus or creation, and that's quite sad.
Especially when you see what passes for "coding" these days (e.g. flowchart boxed things with graphical characters being used at GCSE / A-Level).
Ah the old "we're so much better than you as we have the web, simple apps, easy block coding and all this other fancy stuff like IOT and self driving cars" modern day view.
To which we old greybeards of course reply "we never had any of that, so we rolled up our sleeves and created all that stuff you take for granted..."
And yes, I can remember when all this were fields, now get off my land! ;-D
Sent some ASCII to a radio station on a floppy that contained a list of songs for if stranded on desert isle ...
Don't remember the songs ... but remember there was a bit of animation ... of course, once played the file 'sort of' deleted itself.
Scored two tickets, row 30, center at an outdoor amphitheater, to see Elvis Costello!!!
This post has been deleted by its author
Don't forget the Usborne 1980s computer books (scroll half-way down the page to get them as free PDFs)...
Cheers Dan 55, I remember hours reading Write Your Own Fantasy Games For Your Microcomputer by Usbourne, and plotting dungeons and sprites on graph paper. I don't recall actually doing any programming though for reasons I forget (it might be that that I only had a Vic 20 with cartridges and no tape drive, it might be because I was climbing a tree or damning a stream)
And you've inspired me to find an electronic copy of the Usbourne Book of the Future (1979) which I read a lot as a child in 1985.
It's got mention of Buckminster Fuller, space elevators, linear mass accelerators for shooting ore off the moon, giant flat screen TVs, watch phones that take their time from satellites, video discs...
Great stuff.
https://archive.org/stream/Usborne_Book_of_the_Future_1979_pointlessmuseum#page/n0/mode/1up
Lee D - I get where you're coming from. When my daughter first did ICT at school, I asked what sort of things she did and she said "Word and Excel and stuff". They did some Scratch, but not much.
At her age (possibly younger) I remember "playing" with the ZX81 in WH Smiths, spending my Saturday afternoons laboriously typing-in programs from one of the few books and magazines alongside it, and it really sparked my interest. I subsequently taught myself BASIC and Assembler/machine code from my Sinclair Spectrum manual and reading magazines like Your Computer, Sinclair User and Crash. It was tough running into something that didn't work as expected - especially with assembler - but that meant I had to work things out, learning so much along the way. It set me up well for learning new languages when I became a programmer.
Whilst I've spent much of the last 30 years in PC tech support roles, that same logical "work it out" attitude has meant that, from digging down into an issue and identifying exactly why and how something happens, I could better devise and implement a solution. I know others (usually younger) who'll have a Google, find a solution and implement it, but don't really understand the hows and whys, etc, and so are surprised when the same issue keeps cropping-up or the solution affects causes other issues.
But "Word and Excel and stuff" *is* ICT. You're thinking "ICT" means "programming", it doesn't
As we have discssed recently in another topic, ICT is now off the curriculum for most schools in England, and Computer Science, which contains a lot more of the stuff we would be familiar with from O-levels back in the day, is the new fashion. It's just a shame that teachers who were perfectly competent teaching Word and Excel are struggling to stay ahead of the class when it comes to Python or Boolean Algebra!
M.
"As we have discssed recently in another topic, ICT is now off the curriculum for most schools in England,"
Which is a shame, became as has been mentioned, ICT is the modern version of reading, writing, 'rithmetic. I've spoke to secondary school teachers and school techs who are seeing more kids coming through who can't use computers very well at all having gone through primary school using tablets/iPads.
"As we have discssed recently in another topic, ICT is now off the curriculum for most schools in England,"
Which is a shame, became as has been mentioned, ICT is the modern version of reading, writing, 'rithmetic.
Which is exactly how it is being treated in many schools. You don't "do ICT" any more, you "do" English (say) and part of the task is to produce a poster using (say) Publisher. You "do" History (say) and part of the task is to use Word (actually, these days it's more likely to be Google Docs) to produce an information leaflet. You "do" maths (say) and part of the task is to use a web browser to research the fuel efficiencies of cars online using manufacturer websites, then enter the data into a spreadsheet and plot graphs or produce ordered tables of cost, power, efficiency etc. This last one is something my 14-year-old has been doing today.
Once the (very) basics have been taught which, just as with reading riting and rithmetic, tends to be concentrated in what is now called "Foundation Phase" (nursery and infants, effectively), the rest is taught (in the better schools at any rate), incidentally, as a byproduct of other activities. Very 1960s :-)
One thing which isn't taught in many (any?) schools is touch typing. However popular tablets may be at the moment, the keyboard is not going away any time soon, and is necessary for fast, accurate, efficient content creation right the way through most people's careers. As I think I have mentioned previously, I believe touch typing should be taught alongside teaching how to hold a pencil and do "joined up" writing. It will - at the least - help to avoid many future RSIs!
M.
Well no, I don't think "ICT means programming", but I did think some programming would be involved. Scratch is something I suppose...
As for your analogy, I also wouldn't expect "driving" to need an understanding of "automotive engineering", but I would expect someone to have a grasp of the basics like "going too fast in rain might mean that the tyres can't clear the water away quick enough, so theyrcan't grip the road and you may skid" rather than just telling them "go more slowly in the rain". It's not engineering (and it might not save you anyway...) , but if you know the reason why you're skidding in a downpour, then you have at least some inkling of what to do next (ie. slow down).
As for your analogy, I also wouldn't expect "driving" to need an understanding of "automotive engineering",
The analogy I usually trot out in these circumstances - so apologies if anyone remembers me saying it in these hallowed halls previously - is that of a (hypothetical) newly qualified driver whose car breaks down one day, shortly after passing his test. He calls the AA out who diagnose a simple lack of petrol.
"But I never had to put petrol in my instructor's car!"
I feel the same about computer "users". Without some kind of basic understanding of what the computer is trying to do under the hood, users make all sorts of assumptions and end up making a bigger mess of things.
Like the scenario (this one is real - from one of my first jobs) where I get called up from the basement (where us engineers live) to the office because "the printer isn't working". I arrive to find the user repeatedly clicking the "print" icon (Word 5 I think, WfW 3.11) and no printout appearing on the Laserjet at the end of the table.
On the other hand, half a dozen printouts are making their laborious way through the colour HP A3 Deskjet at the other end of the table.
Because in those days, the print icon meant "print using last settings", and the user didn't have the nous to check what those were, despite having recently returned from a training course in Word and us having explained the printer setup to everyone repeatedly, since installing the second printer some months prior.
M.
"going too fast in rain might mean that the tyres can't clear the water away quick enough, so theyrcan't grip the road and you may skid" rather than just telling them "go more slowly in the rain".
Most drivers don't know that much. At best, they know that a tyre must have a certain depth/quality of tread to help it grip the road and not get fined/points on their licence. Knowing the tread is carefully designed and engineered to expel water is beyond most of them.
"I know others (usually younger) who'll have a Google, find a solution and implement it, but don't really understand the hows and whys, etc, and so are surprised when the same issue keeps cropping-up or the solution affects causes other issues."
This is only half of the problem. Playing with 8-bit computers was "easy" in that a single person could learn all about the hardware, the software, the ROM etc., and everything you did you were doing for the first time. Others may have already done it, but you didn't know that. Stick even a RaspPi in front of a kid today and it's likely got a full desktop OS already installed and running and it's so big and complex that it took teams of people to develop the hardware and software. And pretty much anything you can tink of to do with it has not only already been done but you can download the s/w or schematics or even buy a kit to do it. The sense of discovery is no longer there other than in the sense you are "discovering" what everyone else already knows as in all the other sciences taught in school. There's far less reward or incentive in the self-discovery we had in the 8-bit days so it needs the right teacher to inspire and right kids who want to be inspired.
The reason I like coding on microcontrollers now is it give you that same sort of "I know about every byte in memory" sort of experience that I remember from the BBC Micro. Although even near the lower end of the microcontroller spectrum you may find higher specs that we were used to back in the 80s.
I was always a Commodore 64 person but I was totally in the ethos. I can still remember the bits of the memory map I used most - D000 was where the character rom lived, A000-BFFF was the basic, then there was C000, KERNAL started at E000, D012 was the current raster line, D020 was the border colour, D021 was the screen colour, always set $01 to $35 to clear out the ROMS from memory and turn the tape off...
Ah, heady days...
One of the underlying problems with the way we teach coding etc. is we don't actually need lots of mediocre programmers. What we actually need is a small number of excellent ones.
Achieving this in a large scale education system is very difficult for any subject. The counterpoint to this is we do need a large chunk of the population to be able to ask the right questions and understand the underlying logic.
I'm the latter never programmed past 'IF' functions in Excel but speak the language sufficiently well to get the most out of those who can.
True but it is still important that people know what a computer does
Most people don't become professional physicists but it's still worth teaching everyone that you perform experiments, see how changing one thing affects others, change your mind when you see the results - rather than just believe what some ranting idiot says
"One of the underlying problems with the way we teach coding etc. is we don't actually need lots of mediocre programmers. What we actually need is a small number of excellent ones."
This is why Computer Science/Studies should be a core science subject in secondary school like maths, physics, biology and chemistry. Most students will never progress very far in any of them but will at least have a basic understanding. The bright and interested ones will go onto A levels and maybe even a related degree at university.
Those reading who are old enough might remember CECIL from O/A level Computer Studies when the subject was first being introduced to schools. A sort of assembly language that taught the basics despite having no direct practical use at all. That gave me the background to play with Z80 assembly when I'd saved up enough to buy a Video Genie (TRS-80 model 1, Level II clone). Other in my A level class played with 6502 on the schools Commodore PET. (Yes, singular, one PET for the whole school of 1100 pupils)
Back then, there were 16 of us in the entire school doing O level Computer Studies. In 6th form, there were 9 doing A level computer studies, and there were two other local secondary schools feeding our 6th form, so 9 people out of a potential pool of about 3000.
The paper tape reader on our Elliott 903 is playing up.
Good chance it's the light bulb or crap on the optics but I'm so looking forward to working on it as opposed to knocking out C code as I am right now.
If it's not optical then it's into the "initial instructions" (bootloader) I go.
I had Modula-2 and Prolog on mine. Upgraded to have DS 720K 3.5" floppy as second drive, extra ram, centronics + serial port for my modem. A REALLY slow 1 bit scanner using the printer. Also a mouse and a bit map graphics based pseudo DTP program, NewWord & Cracker (WP & Spreadsheet), Brainstorm and Circuit modeller, a sort of filter simulator that wasn't Spice.
I had a Spectrum and an Apple II (UCSD-pascal) + Z80 card (CPM & Z80 assembler), + Microprofessor when people had BBCs and Research Machines. Later I had a Jupiter Ace and wrote some forth, before I got the PCW.
I never really used Basic till after I did C++, then C. It was VB5 (briefly and then VB6 with Option Explicit and sometimes calling DLLs done in Modula-2 or C++). Early microcomputer BASIC looked like ForTran without the card punching to me. Macro Assembler and Pascal seemed more interesting after learning Fortran at College.
@Vometia Munro
I seem to recall they were ~£300 for a Model 'B', which was a lot, when a Spectrum was just over the £100 mark, or a C64 for about the same,... although many of these machines started out at far higher price points,... I recall a friend got a Ti994a,... which at release had a rather eye watering £1000+ price tag, but then it was cutting edge and had a 16 bit processor and all that.
I ended up with an Acorn Electron, which kept me highly amused, writing code, and playing 'Cylon Attack' with my analog joysticks.
@GruntyMcPugh
I seem to recall they were ~£300 for a Model 'B', which was a lot,
Model A was £299 and B was £399 in January 1982. You can see the prices if you google search for the old advertising. (they were briefly a bit cheaper for the early bird launch orders)
It's also well reported in this excellent article:
https://www.theregister.co.uk/Print/2011/11/30/bbc_micro_model_b_30th_anniversary/
£400 for a model B: ISTR the price never came down but instead they bundled more stuff in with it. I assume this is because the "more stuff" was of more intangible value compared to the physical electronical bits that went into it rather than the "reassuringly expensive" style Stella ads that were popular at the time! Many competing home micros were £200 or less: as with Wayland, I ended up with a Dragon 32, and still regret not having the means to get a nice FDD-based system running OS/9 or Flex, but it was still interesting.
And a few years later, I also acquired an Electron, which I liked a lot but it did come with a whole bunch of compromises: much of what made the BBC interesting was pruned away, even when the Plus-whatevs expansions were bolted on (though they were interesting in themselves in that they really learnt from the "wobbly RamPak" problem and were about as firmly attached as could be) but the ULA had *so* many compromises, the most notable being the 4-bit memory bus. The Electron was a bit of a mixed bag; some bits were worse, some better, but mostly it was too late for that price point. I liked its keyboard, though: I thought it was better than the BBC's, though I also couldn't tell any difference between the Dragon's "terrible" keyboard (according to the computer press at the time) and the BBC's, by which I mean the main production version whose number and keyswitches I forget offhand. My daily keyboard is a Model M by way of comparison so I guess delicate keystrokes aren't for me. :D From what I understand, the main criticism of the Electron's was its potential lack of longevity though it's hard to know if this actually translated into real world problems; it felt nicer to me, though. Even if it was more beige.
"I seem to recall they were ~£300 for a Model 'B', which was a lot,"
Especially when, if you'd already reached 17 years old, you could get a cheap second hand car for that price, or if you went for more of an old banger, include the insurance in that £300 too. I got my first car when I was 21 and IICR, 3rd party fire and theft policy was about £100.
"The cost thing was a real problem. They were justifiably expensive, and all the stuff that went into them to make up that expense is what made them interesting, but their comparatively high price put them way out of reach of many people."
While that is true, all of the programming features being mentioned on here were also available on the Electron, which was half the price.
Shame the Electron had slow memory chips to save costs, some kind of video memory contention in its ULA which the BBC didn't have which slowed things down even more, and no Mode 7 which a 32K computer really needed as otherwise the available memory was limited.
Sinclair had Acorn beat when it came to building to a price point.
Yes, BBC was prohibitively expensive and I was never going to get anywhere near it. Nor the TRS-80 in the local shop.
It was SInclair that finally allowed me to get my hands on one, and then own one.
According to the MeasuringWorth website, the 1982 £399 price of a Model B is well over a grand in today's money. Relative to average income, over £2000.
Your first touch point with this new fangled tech is...Lisp? That's some serious brain engagement.
LISP is not really that complex to learn. The syntax is dead simple (albeit a bit verbose), and you can code with loops and assignments just like in BASIC, if you find that simpler than recursive functions (I don't).
LISP on the BBC was, however, considerably slower than BASIC, which was probably because BBC BASIC was written by Sophie Wilson, who did a lot to optimise it.
I never knew there was a woman involved in the project at that level
Interesting that on a music programme the other day they were talking about Walter Carlos, when she's been Wendy for a very long time.
Never mind Roger / Sophie (I first learned about this while at Poly in the late 80s / early 90s and was initially confused), I always wanted to know who were the people behind the "FRED", "JIM" and "SHEILA" memory blocks.
M.
Having an assembler built-in to the basic machine was a bonus, such as the BBC and Commodore 16/Plus 4. OK, so a purchased one, especially with a good manual, was also grand, but having one in ROM meant fewer re-loading hassles - so long as you saved before running of course!
Like Seymour Crays source code which used bit manipulation instructions in places like masking instead of straightforward mathematical operations because it was faster in cray cos, I remember disassembling elite, and learning from the not-so-straightforward parts of the dump the small tricks and techniques to get more from less.
I thought i was king of the hill in the 80s when i went out with my few years of coding to work, only to run up against old mainframe guys who could glance at a page of core dump and spot the programming error!!! That was me put in my place. Took me years to learn that, and only after i went back and covered electrical engineering.
I really miss those days, when it was all about how to get a gallon from a pint pot, unlike now where we seem determined to get a pint pot from a gallon.
That's because it wasn't complicated by today's "IP" fanaticism, which treats all computer users like dumb consumers, and prevents them gaining full and unrestricted access to their own legally purchased property, for educational or any other purposes, using both legal and technical measures.
And you expect a manual?
Pfft. Consider yourself lucky that you're even allowed to turn the damned thing on without being given a stiff rectal probing by the "IP" police.
Education is a crime, in the twisted world of "IP" racketeers. No schematics or source code for you, sonny.
I thjink I may be overdue for my annual rewatching of Micro Men.
https://www.youtube.com/watch?v=XXBxV6-zamM
When I win the pool^ lottery I'm going to organise a geekfest with a showing of MM where everyone has to shout the lines at the screen.
PS The British IBM also -- https://www.youtube.com/watch?v=gCyLLFNh24E
I was an Atari man. 6502 all the way. Player Vector Graphics (sprites for those of you a generation younger). Raw coding I/O cos you only had 32K to do everything. Using a standard routine as a loadable bit of script. Forgetting that you had hard coded the I/O channel to 0. (out of all of 6). Coming back 3 months later to use it again, choosing channel 1 and not knowing why it didn't work. Because I intended it to be flexible but forgot about the hard coded port. Documentation; who needs stinking documentation...
And of course, trying to find 3 ring binders for 'De Re Atari'. Still got mine. (De Re, I gave the binders to a friend who also needed them)
Fell in love with the 6809 - favourite op code of all time
BRN
BRN, LBRN Branch (short or long) never
SOURCE FORM: BRN dd; LBRN dddd
Which in the original documentation was described as "to keep symmetry with BRA (Branch always).
"JUMP - What now?"
"OK -- we'd better have a 'DON'T JUMP'"
"What always?"
I don't see that sort of humour in hardware often now.
{shiver} Too many have not progressed from that mentality.
We still get tiny windows on wide screens;
Child processes asking for information you need to see the in parent program and you cannot switch to that window;
and much more.
I sold more Amiga 1000 than Commodore 64's and always had people programming Hewlett Packard Calculators looking for argument over what was real programming.
But simpler time When Apple & Amiga already had their own inbuilt sound and graphics.
You would have to reboot between every program - Still recommended ;-) today.
>That was possible in the 8-bit world, where a 150-page volume was all one needed before vast, sprawling and hairy frameworks absorbed all the learner's attention.
>And that breadth of learning, more than anything, perhaps accounts for why the 8-bit generation became so accomplished.
Alas, this was EXACTLY what the Raspberry Pi was supposed to do/be: bring back that simpler all-in-one environment to allow kids to get into computers properly, to have that sort of whole-machine involvement that we had as kids, as our own intro to the the whole-scope of computers.
Sadly, in one of the more deranged Scope Fails of all time, they accidentally delivered a cheap tiny unix box for hardware hackers. With all the virtualised insulations/mappings that entails. Utterly utterly antithetic to their stated goal.
BUT:
there is one larger benefit they've accidentally created:
For anyone with startup aspirations but nervous about ability to convince investors to pony up money, this (very) hard work has already been done for you! Those original investors (and their like) have already been convinced! D/L their original pitchbook and their original investors' contact details, and off you go. You will be the fastest funded hardware startup in history.
Raspberry Pi had to deliver something with relevance to the modern world, or they might as well teach clockwork to people designing modern watches.
The Pi is quite capable of operating in total simple mode and starts up into a very basic gui. It has its entire life-energy and soul resident on the SD card which makes it easy to screw up and start again.
Pi is a success. If you want something closer to bare metal, then the PIC18F family and JAL to program it. Direct I/O and access to all HW directly, but a nice high level language that accepts in-line assembler.
There is even a board that takes Ardiuno shields. Though I'd rather knock up a PIC on veroboard (stripboard) with the I/O better laid out than the shields. USB only needs a socket. Libraries for GLCDs, text LCD, SDIO, FAT etc.
The Pi is today's "CPU". In the '70s you'd start with a CPU and build a design around that, now you start with a Pi and build a design around that. It's similar to the productivity change with wallwarts, I wasted too much of my youth building power supplies when I was wanting to be building my project instead, ubiquotous wallwarts reduced that to padding a PSU socket.
You must have been at the same school as me. A few privileged sixth-formers got to touch the only computer in the school which was a TRS-80. It was kept in a locked room with a smoked glass window which if you peered up close you could see the glow of the monitor and wonder about what sorcery was within.
It was a science teacher who bought his own ZX81 in and allowed us to play on it that got me started.
BBC model B was something I only ever saw on TV or in printed adverts.
Pah, computer? We had a teletype connected to the local Tech College's ICL via a 150/300baud acoustic modem (in stylish wooden flip-top box with velvet lining) but most of the time it was fill in the programming sheet and wait a week for the punched cards with the obligatory syntax error to be returned, correct error ... wait ... time passes ... a card punch emits a blinding flash as a circuit board explodes ... miss a week ...
Had the honor of working with a guy who was on development of one of the last big card reader/punches and (reputedly) the fastest ever built ... It was also the one that produced the biggest mess if it misfed and jammed on the output ...
"We had a teletype connected to the local Tech College's ICL via a 150/300baud acoustic modem (in stylish wooden flip-top box with velvet lining) "
Someone figured out how to loop the punched tape back in so it would punch every hole. We used it to create confetti. This was thrown from the first floor window on to people.
A local Tech College?
You were lucky!
The best we had access to was a classmate's friend who came to visit for the summer and went to a no-name private school in a different part of the country - where they had a Commodore PET on display in the bottom of a locked filing cabinet stuck in a disused lavatory, in an unlit cellar with no stair access, with a sign on the door saying ‘Beware of the Leopard.'
I miss them all.
Software loaded from tape on the B, or if you were brave via EPROM socket you could install. Games like Imogen, Knight Lore I recall.
Master 128, 5 1/4 dual floppy drives, wow, Only platform I ever got as far as -----E L I T E ----- although the memory of the game now lives on in lots of others. Games like Sentinel.
I think I had bought almost every title from Superior Software by now.
I did plenty of tinkering with coding in BASIC, Assembler, Giving up on debugging copied code from Magazines, and early efforts a at home automation with the "red box system" this sort of thing is apparently novel in spite of the efforts all that time ago.
Archimedes, my first HDD (10Mb if I recall) but I could have 256 colours, bring back Zarch I want to play it again.
And I don't care what they say, I still think the CEEFAX character set was one of the best.
Red Box suddenly triggered an involuntary memory. From the snappily-named Electronic Fulfilment Services Ltd:
Never got one though. I wonder if someone's selling one on Sell My Retro or eBay... no... must... resist...
That's because teletext screen resolution was 480×500, higher than most home computers' screen output (apart from the BBC's of course, but only when it was in teletext mode, i.e. only when the teletext chip was working).
I'm tempted to put the font on the Raspberry Pi to make it more readable.
The Apple II and CGA IBM were based on NTSC, only 480 visible lines, or 240 if interlaced. Hence 320 x 240 and 640 x 480 graphics modes on original VGA. The EGA 350 lines was maybe to allow overscan?
How many computers ever had European 768 x 576 square pixels? SVGA 800 x 600 was the closest. Did DELL have one mysterious laptop with 576 line LCD?
Also all the HD TV modes are based off Japanese NTSC derived hybrid analog HD, the 1125 lines is roughly 1050 visible. Even 720 lines is a big improvement on 480 line VGA. Not so much on any digital version of PAL. Also NTSC is the reason for poor 704 or 720 horizontal pixels on Digital "PAL" (non-USA) SD.
The BBC micro was one of the few ever with a decent range of graphics modes for European TV and video monitors.
Structure and Interpretation of Computer Programs was still one of the favoured introductory textbooks when I got to university at the turn of the millennium. I took a Scala course a few years ago and thought I was doing really well until I realised that all of the problem questions were just direct adaptations of SICP originals so I'm not sure I was coming up with solutions so much as regurgitating them from some deep recess of my memory with different syntax.
>Your name is Robert (Bob) Howard
If I may be CANDID with you, I find myself at a disadvantage - you appear to have seen through my disguise, thus rendering my candour rather less effective than I hoped.
Do you, perchance, have a laundry list about your person?
On the contrary, it's my favourite programming language of all; the ultimate in linguistic elegance - the only other times I have been as awestruck were when I learned of the 'imp' class of redcode warrior and, later, of the first IRL 'virus' that didn't have a transport mechanism of its own but, instead, looked for other email viruses to infect, so that it could piggyback off them.
But LISP changes the way you think irrevocably and, just occasionally, it would be nice not to see recursion everywhere and worry about my mind disappearing down the hole in the middle.
Also, the specific example wasn't a criticism of LISP but an observation of the fear induced when I realised I was, entirely unconsciously, thinking in LISP - that's scary.
This post has been deleted by its author