52

Elite used procedural generation. There's a good description of the algorithm on the Elite Wiki and although the original 6502 source code archives are available on Ian Bell's Elite site he also converted the procedural generation code into C for "Text Elite", so that's probably easier to read. This extract from the book "Backroom Boys: The Secret Return Of ...


42

You just made a file for each chapter, like sensible people do with current word processing! It is very unusual to write something lengthy in a single document.


38

There are a number of optimisations which, in aggregate, will improve performance somewhat: There are multiple linked lists for the variables, one per first letter of the variable name. This makes name lookup faster compared to a more typical implementation with one linked list. The integer variables @% through Z% have fixed memory locations and do not ...


32

First of all, though the vast majority of BBC Micros were supplied with a switch mode power supply, anecdotal evidence suggests that the few that did have linear power supplies are actually more reliable. The surviving switch mode power supplies have almost universally required component replacements by now. But it seems at least some of the linear supplies ...


31

Per Sophie Wilson: To prove that [Steve had] designed the microarchitecture correctly, he wrote, in BBC BASIC, a model of the microarchitecture. To prove that I'd designed the architecture correctly, I wrote an interpreter for the processor's instruction set and wrote programs in it. So, well before any actual commitment to doing things, we could ...


29

The early versions of Microsoft BASIC required 4KB of ROM The 4k versions lacked a number of major features, including string variables. These were added in the 8k versions. The equivalent 6502 version, which also expanded the floating point from 32 to 40 bits, was about 10k. But Microsoft's IBM BASIC (known as "Cassette BASIC") for the original IBM PC ...


25

Sideways ROM (also RAM in later models) was paged into the processor's address space. Sideways memory sat in the address range from $8000 to $BFFF. The BBC Model B had four slots on the motherboard into which EPROMs could be put to occupy this space. One of the slots was reserved for BBC Basic. Expansion boards could be purchased to expand this to 16 ...


24

This page describes one of the prototype A500s used by Paul Fellows (who led the team in charge of developing Arthur, the operating system which eventually became RISC OS). Paul Fellows himself said This machine is the one I used for development of the Operating System at Acorn. Originally these machines were hooked up to BBC micros via an umbilical into ...


24

It was common to install word processing software as a ROM into one of the spare "sideways ROM" sockets on the BBC Micro, in the same way as the DFS ROM needed to operate a floppy drive. WordWise and Inter-Word were two popular options. This left more RAM available for text than if the software were loaded into RAM from tape or disk; typically ...


20

The chips on the motherboard were quite widely spaced. This is still a design consideration when making boards more heat tolerant. Also, the chips didn't generate the sort of heat that more modern, faster processors do. Air did circulate through the BBC case. Entering through the ports on the underside and leaving via cooling slots at the back. There ...


19

The Tube interface was intended to enable the addition of what was known as a Second Processor. Although this was something of a misnomer as the additional processor became the main CPU of the system and the base BBC Micro became an I/O controller. When running, the second processor's memory was addressed from &00000000 upwards, and the I/O processor's ...


18

Reading up on various preservation efforts, including the Center for Computing History's, and information collected on Andy Finney's and Adrian Graham's sites, it appears that the most difficult part would be physically reading the disks — the required drives were built in limited quantities. If you have one of the drives, it might be possible to connect it ...


17

Most of BBC BASIC's speed advantage came from Acorn's use of a 2 MHz 6502 with fast 4816A RAM chips. It's a good interpreter, but it's the hardware that makes it near-mythically fast. To confirm this, one can run J. G. Harston's port of 6502 BBC BASIC for Commodore 64. This is essentially the Acorn BBC Micro's interpreter lightly patched to talk to KERNAL ...


17

The so-called "1MHz bus" is not actually a separate bus. It is just the set of devices which were too slow to run at the full 2MHz in the original BBC Micro, and which therefore incur a clock-stretched cycle when accessed. These include most of the SHEILA ($FExx) devices, except for the Econet, floppy, Tube, VIDPROC, and memory mapping registers. ...


16

Devices connected to the Tube weren't terribly common because they added further expense to an already rather expensive computer in the first place. The 6502 second processor was £200 and the Z80 was £300, which is about £600 and £900 respectively in 2017 money. Hardware-wise, it consisted of a short bidirectional FIFO used for passing messages between the ...


15

Linear power supply was not a BBC engineering requirement by the time I joined Designs Dept in late 1981. Perhaps it was dropped well before actual production; I don't know if that was pushback from Acorn or experience with a prototype. But by late 1981, shipping some with linear PSUs was an unhappy compromise caused by : (a) demand much higher than ...


15

The BBC Micro's specification was drawn up by the BBC (with some subsequent modifications). Computer manufacturers were invited to design a computer system that would meet that specification, and Acorn had an early prototype for their Proton computer that they were able to adapt to suit the BBC. The specification includes: Video display: Either (a) an ...


15

No, it can not be used to sample audio. As the link you provided says, in 12-bit mode it takes 10 milliseconds to convert a sample, and even in 8-bit mode it takes 4 milliseconds. That results into maximum sampling rate of 250 Hz, which is useless for sampling audio. The low sampling rate indicates the analog input is meant for slowly changing signals, like ...


14

According to https://en.wikipedia.org/wiki/Adaptive_tile_refresh: CGA (the previous generation of PC graphics hardware) lacks features for scrolling in hardware so PC games started featuring hardware scrolling only with EGA. That paragraph is wrong, or better, it lacks a much needed refinement: CGA did not provide horizontal hardware scrolling. Continue ...


14

I did it for a game, but it was a mess. It was a port of a 2-way fine scroller... by making it a 1-way scroller, we trashed the game pretty badly... it was definitely not faithful to the original. This alone was a disappointment to me and to the client. Horizontal fine scrolling was simply not on the menu. It was not achievable. We could horizontal scroll ...


13

BBC Micro model B has 32k memory. An average book, like Mary Shelley's Frankenstein, has about 350,000 characters in it. So you'd need over 10 times the memory to load it in, plus the software to edit it. True, but only if you insist on having all text at all time in RAM. If people wanted to use a BBC Micro era computer to write a novel, how did they go ...


12

The descriptions are computed via the method goat_soup which works recursively. The system description is set by mySystem.description = goat_soup("\x8F is \x97.",&mySys); The description string contains two special characters, \x8F and \x97. Within goat_soup the available set of words and sentences is stored as desc_choice. The special characters are ...


12

Most hobbyists put a ZIF socket onto those pins. This then was connected through to the sideways ROM sockets on the motherboard. The socket enabled you to insert language ROMs as required, thus not using all the available sideways sockets. However, the main purpose was to fit the Speech Synthesizer unit. Fitting this required modifying both the main ...


12

According to EBU R95, the title-safe area for 576i format (corresponding to PAL SDTV) is 258 lines tall in each field. This is just large enough to accommodate the 256 lines per field that the BBC Micro uses. This is probably not a coincidence, as the BBC Micro was in part designed so that the BBC itself could use the micro for generating titles and ...


11

With all these 'or' in between and jumping between various points, requirements and conclusions, it's a bit unclear what your're looking for. If this is about most colour with least memory, then the (unofficial) modes Mode 8 and Mode 13 are your thing. Or was it a limitation of bandwidth with the 6845 chip that couldn't handle both 320 horizontal pixels ...


11

[Maury Markowitz' answer already nails it, so this is just to add some numbers for comparison] The Cassette BASIC 1.0/1.1 in the IBM PC ROM is a Microsoft BASIC V5.x (*1). It's usually marketed as MBASIC. It was available as stand alone application or as program under CP/M and other OS. MS offered 3 basic flavours: 8 KiB BASIC Extended BASIC Disk BASIC 8 ...


11

No, the original BBC Micro came with no peripherals at all. It came in a box with room for the computer itself: and a cable and introductory material: The cut-out in the lower part that seems to be unused above is intended for the power cord, which you can see hanging from the computer. (Image source.) As Brian H pointed out, the BBC Master 512 shipped in ...


10

Yes. The BBC has a Motorola 6845 generating its screen addresses. That's a flexible chip, with which the developer has wide control over screen sizing and placement. The Electron has a custom ULA designed by Acorn to produce the same video address generation as the 6845 when configured in one of the built-in modes but its functionality is fixed. So on a ...


10

Well, the folks from stardot came through! It seems it's called Asterisk Tracker, and was published in the December 1984 issue of Beebug magazine. The author was N. Silver: 1L=0:REP.L=L+3:MO.4:DR.1279,0:DR.1279,452:MOVE1279,572:DR.1279,1023:DR.0,1023:F.I=1TOL:V.31,RND(32)+5,RND(31),42,30:N.:P.(L-3)/3:X=0:Y=512:REP.PL.69,X,Y:X=X+4:Y=Y-(INKEY-74+.5)*8:U.PO.X,...


10

Trying to get more into the specifics of the BBC connection, there is a substantial hint in the user guide: However only 5 bits of the [user] port, and CB1, CB2 are used: This leaves bits 1,3 and 4 available for other uses. Which is backed up by the schematic provided by Simon Inns in the doco for SmallyMouse2; comparing that to the user port's pinout ...


Only top voted, non community-wiki answers of a minimum length are eligible