Extended Screen MODEs ===================== *MODE command and NewModes sideways ROM module J.G.Harston -- 20-May-1993 The *MODE command and the NewModes sideways ROM module allow the BBC or Master to use screen MODEs 8-14 with extra colours, approximating the RISC OS MODEs 8-11 and creating small-memory versions of MODES 1 and 2. The *MODE command runs from disk. SWMode is the NewModes sideways ROM module that allows the same functionality just using the BASIC MODE command and the VDU 22 command it calls. MODE list Standard MODEs Extended MODEs MODE 0 80x32 chars 2 colours MODE 8 80x32 chars 4 colours MODE 1 40x32 chars 4 colours MODE 9 40x32 chars 16 colours MODE 2 20x32 chars 16 colours MODE 10 20x32 chars 16 colours MODE 3 80x25 chars 2 colours MODE 11 80x25 chars 4 colours MODE 4 40x32 chars 2 colours MODE 12 40x32 chars 4 colours MODE 5 20x32 chars 4 colours MODE 13 20x32 chars 16 colours MODE 6 40x25 chars 2 colours MODE 14 40x25 chars 4 colours MODE 7 40x25 chars teletext MODE 15 40x25 teletext MODEs 8-11 are functionally the same as the RISC OS screen MODEs. MODE 10 would normally be 20x32 characters in 256 colours, but 256 colours is not possible with the BBC video hardware, so it drops back to MODE 2. MODE 12 and 13 are effectively small-memory versions of MODE 1 and 2. You can specify shadow MODEs in the normal way by adding 128, eg MODE 136 for shadow MODE 8. The *MODE command will take a decimal or hex parameter. If you use the *MODE command from BASIC on a non-Tube machine, then BASIC's HIMEM pseudo-variable is reset. However, no checking is done because if no MODE change happened you would be left with the command itself still in the screen memory. So, you need to use BASIC's MODE command before *MODE, eg: MODE 8:*MODE 8 To select MODE 8 MODE &89:*MODE &89 To select shadow MODE 9 MODE 2:*MODE 2 To reset the characters and select MODE 2 *MODE needs the character set exploded with *FX20,6. On a Master, or with an active Tube, the set is always fully exploded. On a B/B+, the *MODE command explodes the font. If this results in PAGE rising the current language is re-entered. When in MODE 8-14 you cannot copy characters using the cursor keys because of the redefinition of the characters. The NewModes sideways ROM module has a relocation table so it can be combined with other sideways ROM modules and loaded into a single ROM/RAM bank.