diff --git a/common/hw-gfx-gma-pipe_setup.adb b/common/hw-gfx-gma-pipe_setup.adb
index 5e32281..31aecf5 100644
--- a/common/hw-gfx-gma-pipe_setup.adb
+++ b/common/hw-gfx-gma-pipe_setup.adb
@@ -525,11 +525,13 @@
       end if;
       Registers.Write
         (Register => Cursors (Pipe).POS,
-         Value    => CUR_POS_Y (Y) or CUR_POS_X (X));
+         Value    => CUR_POS_Y (Y) or CUR_POS_X (X),
+         Verbose  => False);
       -- write to CUR_BASE always arms other CUR_* registers
       Registers.Write
         (Register => Cursors (Pipe).BASE,
-         Value    => Shift_Left (Word32 (Cursor.GTT_Offset), 12));
+         Value    => Shift_Left (Word32 (Cursor.GTT_Offset), 12),
+         Verbose  => False);
    end Place_Cursor;
 
    ----------------------------------------------------------------------------
diff --git a/common/hw-gfx-gma-registers.adb b/common/hw-gfx-gma-registers.adb
index 012ccf6..41aae0a 100644
--- a/common/hw-gfx-gma-registers.adb
+++ b/common/hw-gfx-gma-registers.adb
@@ -381,15 +381,18 @@
    ----------------------------------------------------------------------------
 
    -- Write a specific register
-   procedure Write (Register : Registers_Index; Value : Word32)
+   procedure Write
+     (Register : Registers_Index;
+      Value    : Word32;
+      Verbose  : Boolean := True)
    is
    begin
-      pragma Debug (Debug.Put (GNAT.Source_Info.Enclosing_Entity & ": "));
-      pragma Debug (Debug.Put_Word32 (Value));
-      pragma Debug (Debug.Put (" -> "));
-      pragma Debug (Debug.Put_Word32 (Register'Enum_Rep * Register_Width));
-      pragma Debug (Debug.Put (":"));
-      pragma Debug (Debug.Put_Line (Registers_Index'Image (Register)));
+      pragma Debug (Verbose, Debug.Put (GNAT.Source_Info.Enclosing_Entity & ": "));
+      pragma Debug (Verbose, Debug.Put_Word32 (Value));
+      pragma Debug (Verbose, Debug.Put (" -> "));
+      pragma Debug (Verbose, Debug.Put_Word32 (Register'Enum_Rep * Register_Width));
+      pragma Debug (Verbose, Debug.Put (":"));
+      pragma Debug (Verbose, Debug.Put_Line (Registers_Index'Image (Register)));
 
       Regs.Write (Rep.Index (Register), Value);
       pragma Debug (Debug.Register_Write_Wait);
diff --git a/common/hw-gfx-gma-registers.ads b/common/hw-gfx-gma-registers.ads
index c9454c9..1245c9f 100644
--- a/common/hw-gfx-gma-registers.ads
+++ b/common/hw-gfx-gma-registers.ads
@@ -2310,7 +2310,6 @@
                   null  => Verbose),
       Pre     => True,
       Post    => True;
-   pragma Warnings (GNATprove, On, "unused variable ""Verbose""");
 
    procedure Read_AUD_VID_DID (Value : out Word32)
    with
@@ -2321,12 +2320,15 @@
 
    procedure Write
       (Register : Registers_Index;
-       Value    : Word32)
+       Value    : Word32;
+       Verbose  : Boolean := True)
    with
       Global  => (In_Out => Register_State),
-      Depends => (Register_State => (Register, Register_State, Value)),
+      Depends => (Register_State => (Register, Register_State, Value),
+                  null => Verbose),
       Pre     => True,
       Post    => True;
+   pragma Warnings (GNATprove, On, "unused variable ""Verbose""");
 
    procedure Is_Set_Mask
       (Register : in     Registers_Index;
