1.1 --- a/Electron.txt Sat Feb 01 17:55:57 2014 +0100
1.2 +++ b/Electron.txt Sun Feb 16 01:42:42 2014 +0100
1.3 @@ -42,11 +42,18 @@
1.4 means of installing ROM-based software - the Plus 1 and other expansion units
1.5 offered ROM cartridge slots, and various expansions provided ROM sockets - the
1.6 improved Electron would ideally need to offer a ROM cartridge slot as part of
1.7 -the unexpanded machine. A side-benefit of adding this feature to the base
1.8 -machine would arguably be an increased demand for cartridge-based software,
1.9 -potentially at a slightly higher price and also offering additional hardware
1.10 -features if necessary, thus making any cost incurred in the manufacture of the
1.11 -base unit more bearable.
1.12 +the unexpanded machine.
1.13 +
1.14 +A side-benefit of adding this feature to the base machine would arguably be an
1.15 +increased demand for cartridge-based software, potentially at a slightly
1.16 +higher price and also offering additional hardware features if necessary, thus
1.17 +making any cost incurred in the manufacture of the base unit more bearable.
1.18 +And in school environments where unexpanded BBC Microcomputers were often used
1.19 +with tapes, the use of ROM cartridges for instant and reliable loading of
1.20 +software would have given the Electron a practical advantage: it would be a
1.21 +cheaper machine that could later be expanded with disk drives (the other main
1.22 +way of providing fast and reliable storage) while still offering a substantial
1.23 +saving over the BBC Micro.
1.24
1.25 The Slogger/Elektuur turbo board modified the system to permit the CPU to
1.26 access the bottom 8K of RAM without interruption by the ULA. This feature,
1.27 @@ -76,3 +83,16 @@
1.28 circuitry and would only benefit UHF and colour composite video displays, but
1.29 the latter limitation might not be a significant issue for the majority of the
1.30 intended audience.
1.31 +
1.32 +Supporting Local Area Networking
1.33 +--------------------------------
1.34 +
1.35 +The Electron was mostly aimed at the home market, but a cheaper computer would
1.36 +have been very attractive for schools, especially those wanting to purchase a
1.37 +number of machines for networking. Having an option available in the standard
1.38 +Electron would have given such customers a cheap Econet terminal, albeit
1.39 +without the MODE 7 capabilities of the BBC, whilst ignoring the requirement of
1.40 +reliable, fast storage that standalone machines need to have in such
1.41 +environments. With content available on demand over the network, the need for
1.42 +low-memory screen mode usage - in order to retain as much content in memory as
1.43 +possible - would also be diminished.
2.1 --- a/ULA.txt Sat Feb 01 17:55:57 2014 +0100
2.2 +++ b/ULA.txt Sun Feb 16 01:42:42 2014 +0100
2.3 @@ -529,6 +529,35 @@
2.4 retain the details of such areas and additional logic to control the fill
2.5 operation.
2.6
2.7 +Enhancement: Region Filling
2.8 +---------------------------
2.9 +
2.10 +An alternative to memory writing might involve indicating regions using
2.11 +additional registers or memory where the ULA fills regions of the screen with
2.12 +content instead of reading from memory. Unlike hardware sprites which should
2.13 +realistically provide varied content, region filling could employ single
2.14 +colours or patterns, and one advantage of doing so would be that the ULA need
2.15 +not access memory at all within a particular region.
2.16 +
2.17 +Regions would be defined on a row-by-row basis. Instead of reading memory and
2.18 +blitting a direct representation to the screen, the ULA would read region
2.19 +definitions containing a start column, region width and colour details. There
2.20 +might be a certain number of definitions allowed per row, or the ULA might
2.21 +just traverse an ordered list of such definitions with each one indicating the
2.22 +row, start column, region width and colour details. One could even compress
2.23 +this information further by requiring only the row, start column and colour
2.24 +details with each subsequent definition terminating the effect of the previous
2.25 +one. However, one would also need to consider the convenience of preparing
2.26 +such definitions and whether efficient access to definitions for a particular
2.27 +row might be desirable. It might also be desirable to avoid having to prepare
2.28 +definitions for "empty" areas of the screen.
2.29 +
2.30 +One application of region filling is that of simple 2D and 3D shape rendering.
2.31 +Although it is entirely possible to plot such shapes to the screen and have
2.32 +the ULA blit the memory contents to the screen, such operations consume
2.33 +bandwidth both in the initial plotting and in the final transfer to the
2.34 +screen. Region filling would reduce such bandwidth usage substantially.
2.35 +
2.36 Enhancement: Hardware Sprites
2.37 -----------------------------
2.38