diff options
Diffstat (limited to 'qemu/roms/SLOF/slof/fs/graphics.fs')
-rw-r--r-- | qemu/roms/SLOF/slof/fs/graphics.fs | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/qemu/roms/SLOF/slof/fs/graphics.fs b/qemu/roms/SLOF/slof/fs/graphics.fs deleted file mode 100644 index 7d5d9306d..000000000 --- a/qemu/roms/SLOF/slof/fs/graphics.fs +++ /dev/null @@ -1,87 +0,0 @@ -\ ***************************************************************************** -\ * Copyright (c) 2015 IBM Corporation -\ * All rights reserved. -\ * This program and the accompanying materials -\ * are made available under the terms of the BSD License -\ * which accompanies this distribution, and is available at -\ * http://www.opensource.org/licenses/bsd-license.php -\ * -\ * Contributors: -\ * IBM Corporation - initial implementation -\ ****************************************************************************/ - -\ Provide some of the functions that are defined in the -\ "OF Recommended Practice: 8bit Graphics Extension" document - -: draw-rectangle ( adr x y w h -- ) - frame-buffer-adr 0= IF 4drop drop EXIT THEN - 0 ?DO - 4dup drop ( adr x y w adr x y ) - \ calculate offset into framebuffer: ((y + i) * width + x) * depth - i + screen-width * + screen-depth * ( adr x y w adr offs ) - frame-buffer-adr + ( adr x y w adr fb_adr ) - over 3 pick screen-depth * i * + ( adr x y w adr fb_adr src ) - swap 3 pick screen-depth * ( adr x y w adr src fb_adr len ) - rmove \ copy line ( adr x y w adr ) - drop ( adr x y w ) - LOOP - 4drop -; - -: fill-rectangle ( col x y w h -- ) - frame-buffer-adr 0= IF 4drop drop EXIT THEN - 0 ?DO - 4dup drop ( col x y w col x y ) - \ calculate offset into framebuffer: ((y + i) * width + x) * depth - i + screen-width * + screen-depth * ( col x y w col offs ) - frame-buffer-adr + ( col x y w col adr ) - 2 pick screen-depth * 2 pick ( col x y w col adr len col ) - rfill \ draw line ( col x y w col ) - drop ( col x y w ) - LOOP - 4drop -; - -: read-rectangle ( adr x y w h -- ) - frame-buffer-adr 0= IF 4drop drop EXIT THEN - 0 ?DO - 4dup drop ( adr x y w adr x y ) - \ calculate offset into framebuffer: ((y + i) * width + x) * depth - i + screen-width * + screen-depth * ( adr x y w adr offs ) - frame-buffer-adr + ( adr x y w adr fb_adr ) - over 3 pick screen-depth * i * + ( adr x y w adr fb_adr dst ) - 3 pick ( adr x y w adr fb_adr dst w ) - rmove \ copy line ( adr x y w adr ) - drop ( adr x y w ) - LOOP - 4drop -; - -: dimensions ( -- width height ) - screen-width screen-height -; - -\ Initialize a default palette (not a standard command, but useful anyway) -: init-default-palette - \ Grayscale ramp for upper colors - 100 10 DO - i i i i color! - LOOP - \ Standard colors from "16-color Text Extension" specification - 00 00 00 0 color! - 00 00 aa 1 color! - 00 aa 00 2 color! - 00 aa aa 3 color! - aa 00 00 4 color! - aa 00 aa 5 color! - aa 55 00 6 color! - aa aa aa 7 color! - 55 55 55 8 color! - 55 55 ff 9 color! - 55 ff 55 a color! - 55 ff ff b color! - ff 55 55 c color! - ff 55 ff d color! - ff ff 55 e color! - ff ff ff f color! -; |