浏览代码

ASH changed to LSH in MakeCol

Artur Efimov 8 年之前
父节点
当前提交
1ecc90fff7
共有 1 个文件被更改,包括 5 次插入5 次删除
  1. 5 5
      src/Graph.Mod

+ 5 - 5
src/Graph.Mod

@@ -415,18 +415,18 @@ END AddRegion;
 (* Drawing *)
 
 PROCEDURE MakeCol*(r, g, b: INTEGER): INTEGER;
-BEGIN (*!FIXME use MOD and ASH? *)
+BEGIN
   r := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, r) * {0..7});
   g := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, g) * {0..7});
   b := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, b) * {0..7});
-  RETURN SHORT(ASH(ASH(0FF00H + b, 8) + g, 8)) + r
+  RETURN SYSTEM.LSH(SYSTEM.LSH(0FF00H + b, 8) + g, 8) + r
 END MakeCol;
 
 PROCEDURE ColorToRGB*(color: INTEGER; VAR r, g, b: INTEGER);
-BEGIN (*!FIXME use MOD and ASH? *)
+BEGIN
   r := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, color) * {0..7});
-  g := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, ASH(color, -8)) * {0..7});
-  b := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, ASH(color, -16)) * {0..7})
+  g := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, SYSTEM.LSH(color, -8)) * {0..7});
+  b := SYSTEM.VAL(INTEGER, SYSTEM.VAL(SET32, SYSTEM.LSH(color, -16)) * {0..7})
 END ColorToRGB;
 
 PROCEDURE BmpCol*(bmp: Bitmap; r, g, b: INTEGER): INTEGER;