Bank Switching and Operating System – BSOS

Author(s): Dick Wagner
Pub Details: Time Designs Magazine v1 n5 (Volume 1, Issue 5)
Date: July/August 1985
Pages: 12

Paul Hunter has assembled many memory-use solutions in BSOS. Bank switching has been developed into a system much in the sense of DOS. So, what is Bank Switching? Reference to my computer encyclopedia indicates it is a method of extending RAM memory in computers. While each bank of memory responds to the same address, the system is arranged to have only one active bank at any instant. A bank is a block of memory, like 64k. I suspect Paul has coined BSOS.

Our ZX81s and T/S 1000s were not designed to handle over 16k of memory. Stretching to greater limits has required clever concepts by designers…and BSOS has incorporated additional RAM-like action, and the program to use the additional memory. As very long programs can strain 16k memories, likewise, large chunks of data can be a problem.

A program tape and sufficient documentation to get the user started, is available from Paul Hunter, 1630 Forest Hills Dr., Okemos, MI 48864. The taped program is to be used with a minimum of 64k of memory, and memory may be assembled from a series of 16k Timex modules, it may be purchased units such as Memotech 64, Byte-back 64, or it may be in the form of boards having both volitile and non-volitile memory. The T-S HORIZONS series includes the methods to assemble packs, make expansion boards and to combine various memory types to suit the users needs. Experiments in testing and programming are carried thru the series.

Some of the system concept available to the user (either entering a great deal of machine code or purchasing the tape) includes a real directory of up to 15 entries or instructions to SAVE, LOAD, PURGE, RECLAIM, PACK, BANK, ROOM and QUIT. Great flexibility is provided for almost any number of bank blocks. Use is made of the 8-10k block of RAM for operations.

Virtual memory is included in BSOS. This means that memory space (address) that the processor is using can be greater than actual memory. BSOS will give the user up to 80k bytes in length if there is a full complement of 4 banks. Even many of the concepts are useable with only 64k. It appears that considerable planning is necessary to properly segment programs and to use variables wisely. A point…while we normally can use 9999 line numbers, this program permits duplicate line numbers with proper segmenting. This is possible because program segments are moved into addressable space when required and then moved back when their need is ended. Data is also moved in this manner.

Users of large memory systems, not disk, ect., could well improve their operation with BSOS. Substantial speed improvement should be noted and a more professional system is provided the user.

While the purchase of the BSOS tape and document ($10.00 ppd. from the address mentioned above) is a good buy, I suggest obtaining volumes 4,5,6,7,9,10,11 and 12 of T-S HORIZONS to have complete documentation and reference for BSOS.