diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## [2.0.0.1] - November 14, 2023
+
+- Update to `termbox-bindings-hs-1.0.0`
+
 ## [2.0.0] - November 5, 2023
 
 - Overhaul `Cell`+`Scene` API; now it's `Image`+`Scene`
diff --git a/src/Termbox/Internal/Color.hs b/src/Termbox/Internal/Color.hs
--- a/src/Termbox/Internal/Color.hs
+++ b/src/Termbox/Internal/Color.hs
@@ -33,47 +33,49 @@
 -- * Miscellaneous colors, such as @'color' 33@.
 -- * Monochrome colors that range from black (@'gray' 0@) to white (@'gray' 23@).
 newtype Color
-  = Color Tb_color
+  = Color Tb_attrs
   deriving newtype (Eq)
 
+-- These intentionally don't use e.g. TB_RED, 'cause they're all off-by-one in TB_OUTPUT_256
+
 defaultColor :: Color
 defaultColor =
-  Color 0
+  Color (Tb_attrs 0)
 
 red :: Color
 red =
-  Color 1
+  Color (Tb_attrs 1)
 
 green :: Color
 green =
-  Color 2
+  Color (Tb_attrs 2)
 
 yellow :: Color
 yellow =
-  Color 3
+  Color (Tb_attrs 3)
 
 blue :: Color
 blue =
-  Color 4
+  Color (Tb_attrs 4)
 
 magenta :: Color
 magenta =
-  Color 5
+  Color (Tb_attrs 5)
 
 cyan :: Color
 cyan =
-  Color 6
+  Color (Tb_attrs 6)
 
 white :: Color
 white =
-  Color 7
+  Color (Tb_attrs 7)
 
 -- | Make a basic color bright.
 bright :: Color -> Color
 bright =
   coerce bright_
 
-bright_ :: Tb_color -> Tb_color
+bright_ :: Word16 -> Word16
 bright_ c
   | c <= 7 = c + 8
   | otherwise = c
@@ -97,14 +99,14 @@
   = MaybeColor Color
   deriving stock (Eq)
 
-unMaybeColor :: MaybeColor -> Tb_color
-unMaybeColor (MaybeColor (Color (Tb_color c)))
-  | c == maxBound = TB_DEFAULT
-  | otherwise = Tb_color c
+unMaybeColor :: MaybeColor -> Tb_attrs
+unMaybeColor c
+  | c == nothingColor = _TB_DEFAULT
+  | otherwise = coerce @_ @Tb_attrs c
 
 nothingColor :: MaybeColor
 nothingColor =
-  MaybeColor (Color (Tb_color maxBound))
+  coerce @Word16 maxBound
 
 justColor :: Color -> MaybeColor
 justColor =
diff --git a/src/Termbox/Internal/Main.hs b/src/Termbox/Internal/Main.hs
--- a/src/Termbox/Internal/Main.hs
+++ b/src/Termbox/Internal/Main.hs
@@ -7,7 +7,7 @@
 where
 
 import Control.Exception (Exception, mask, onException)
-import qualified Termbox.Bindings.Hs
+import Termbox.Bindings.Hs
 
 -- | @termbox@ initialization errors.
 data InitError
@@ -33,19 +33,19 @@
 -- If @initialize@ succeeds, it must be paired with a call to 'finalize'.
 initialize :: IO (Either InitError ())
 initialize =
-  Termbox.Bindings.Hs.tb_init >>= \case
+  tb_init >>= \case
     Left err ->
       (pure . Left) case err of
-        Termbox.Bindings.Hs.TB_EFAILED_TO_OPEN_TTY -> FailedToOpenTTY
-        Termbox.Bindings.Hs.TB_EPIPE_TRAP_ERROR -> PipeTrapError
-        Termbox.Bindings.Hs.TB_EUNSUPPORTED_TERMINAL -> UnsupportedTerminal
+        TB_EFAILED_TO_OPEN_TTY -> FailedToOpenTTY
+        TB_EPIPE_TRAP_ERROR -> PipeTrapError
+        TB_EUNSUPPORTED_TERMINAL -> UnsupportedTerminal
     Right () -> do
-      _ <- Termbox.Bindings.Hs.tb_select_input_mode Termbox.Bindings.Hs.TB_INPUT_MOUSE
-      _ <- Termbox.Bindings.Hs.tb_select_output_mode Termbox.Bindings.Hs.TB_OUTPUT_256
+      tb_select_input_mode _TB_INPUT_MOUSE
+      tb_select_output_mode TB_OUTPUT_256
       pure (Right ())
 
 -- | Shut down a @termbox@ program.
 finalize :: IO ()
 finalize = do
-  _ <- Termbox.Bindings.Hs.tb_select_output_mode Termbox.Bindings.Hs.TB_OUTPUT_NORMAL
-  Termbox.Bindings.Hs.tb_shutdown
+  tb_select_output_mode TB_OUTPUT_NORMAL
+  tb_shutdown
diff --git a/src/Termbox/Internal/Mouse.hs b/src/Termbox/Internal/Mouse.hs
--- a/src/Termbox/Internal/Mouse.hs
+++ b/src/Termbox/Internal/Mouse.hs
@@ -13,7 +13,16 @@
 where
 
 import GHC.Generics (Generic)
-import qualified Termbox.Bindings.Hs
+import Termbox.Bindings.Hs
+  ( Tb_key
+      ( TB_KEY_MOUSE_LEFT,
+        TB_KEY_MOUSE_MIDDLE,
+        TB_KEY_MOUSE_RELEASE,
+        TB_KEY_MOUSE_RIGHT,
+        TB_KEY_MOUSE_WHEEL_DOWN,
+        TB_KEY_MOUSE_WHEEL_UP
+      ),
+  )
 import Termbox.Internal.Pos (Pos)
 
 -- | A mouse event.
@@ -25,7 +34,7 @@
 
 -- | A mouse button.
 newtype MouseButton
-  = MouseButton Termbox.Bindings.Hs.Tb_key
+  = MouseButton Tb_key
   deriving stock (Eq, Ord)
 
 instance Show MouseButton where
@@ -38,21 +47,21 @@
     WheelUp -> "WheelUp"
 
 pattern LeftClick :: MouseButton
-pattern LeftClick = MouseButton Termbox.Bindings.Hs.TB_KEY_MOUSE_LEFT
+pattern LeftClick = MouseButton TB_KEY_MOUSE_LEFT
 
 pattern MiddleClick :: MouseButton
-pattern MiddleClick = MouseButton Termbox.Bindings.Hs.TB_KEY_MOUSE_MIDDLE
+pattern MiddleClick = MouseButton TB_KEY_MOUSE_MIDDLE
 
 pattern RightClick :: MouseButton
-pattern RightClick = MouseButton Termbox.Bindings.Hs.TB_KEY_MOUSE_RIGHT
+pattern RightClick = MouseButton TB_KEY_MOUSE_RIGHT
 
 pattern ReleaseClick :: MouseButton
-pattern ReleaseClick = MouseButton Termbox.Bindings.Hs.TB_KEY_MOUSE_RELEASE
+pattern ReleaseClick = MouseButton TB_KEY_MOUSE_RELEASE
 
 pattern WheelDown :: MouseButton
-pattern WheelDown = MouseButton Termbox.Bindings.Hs.TB_KEY_MOUSE_WHEEL_DOWN
+pattern WheelDown = MouseButton TB_KEY_MOUSE_WHEEL_DOWN
 
 pattern WheelUp :: MouseButton
-pattern WheelUp = MouseButton Termbox.Bindings.Hs.TB_KEY_MOUSE_WHEEL_UP
+pattern WheelUp = MouseButton TB_KEY_MOUSE_WHEEL_UP
 
 {-# COMPLETE LeftClick, MiddleClick, ReleaseClick, RightClick, WheelDown, WheelUp #-}
diff --git a/src/Termbox/Internal/Scene.hs b/src/Termbox/Internal/Scene.hs
--- a/src/Termbox/Internal/Scene.hs
+++ b/src/Termbox/Internal/Scene.hs
@@ -27,7 +27,7 @@
 render :: Scene -> IO ()
 render Scene {sceneFill, sceneDraw} = do
   tb_set_cursor Nothing
-  tb_set_clear_attributes TB_DEFAULT (unMaybeColor sceneFill)
+  tb_set_clear_attributes _TB_DEFAULT (unMaybeColor sceneFill)
   tb_clear
   sceneDraw sceneFill
   tb_present
diff --git a/src/Termbox/Internal/Style.hs b/src/Termbox/Internal/Style.hs
--- a/src/Termbox/Internal/Style.hs
+++ b/src/Termbox/Internal/Style.hs
@@ -15,8 +15,8 @@
 import Termbox.Internal.Color (Color, MaybeColor, justColor, nothingColor, unMaybeColor)
 
 data Style = Style
-  { foreground :: {-# UNPACK #-} !ColorAndAttr,
-    background :: {-# UNPACK #-} !ColorAndAttr
+  { foreground :: {-# UNPACK #-} !ColorAndAttrs,
+    background :: {-# UNPACK #-} !ColorAndAttrs
   }
 
 instance Monoid Style where
@@ -28,27 +28,27 @@
   Style a1 b1 <> Style a2 b2 =
     Style (a2 <> a1) (b2 <> b1)
 
--- Render a style as a foreground `tb_color`.
-asForeground :: Style -> Tb_color
+-- Render a style as a foreground `Tb_attrs`.
+asForeground :: Style -> Tb_attrs
 asForeground Style {foreground} =
   renderColorAndAttr foreground
 
--- Render a style as a background `tb_color`.
-asBackground :: Style -> Tb_color
+-- Render a style as a background `Tb_attrs`.
+asBackground :: Style -> Tb_attrs
 asBackground Style {background} =
   renderColorAndAttr background
 
-onlyForeground :: ColorAndAttr -> Style
+onlyForeground :: ColorAndAttrs -> Style
 onlyForeground style =
   mempty {foreground = style}
 
-onlyBackground :: ColorAndAttr -> Style
+onlyBackground :: ColorAndAttrs -> Style
 onlyBackground style =
   mempty {background = style}
 
 maybeFill :: MaybeColor -> Style
 maybeFill color =
-  onlyBackground ColorAndAttr {color, attr = mempty}
+  onlyBackground ColorAndAttrs {color, attrs = mempty}
 
 fg :: Color -> Style
 fg =
@@ -60,40 +60,40 @@
 
 bold :: Style
 bold =
-  onlyForeground (onlyAttr TB_BOLD)
+  onlyForeground (onlyAttr _TB_BOLD)
 
 underline :: Style
 underline =
-  onlyForeground (onlyAttr TB_UNDERLINE)
+  onlyForeground (onlyAttr _TB_UNDERLINE)
 
 blink :: Style
 blink =
-  onlyBackground (onlyAttr TB_BOLD)
+  onlyBackground (onlyAttr _TB_BOLD)
 
-data ColorAndAttr = ColorAndAttr
+data ColorAndAttrs = ColorAndAttrs
   { color :: {-# UNPACK #-} !MaybeColor,
-    attr :: {-# UNPACK #-} !Tb_attr
+    attrs :: {-# UNPACK #-} !Tb_attrs
   }
 
-instance Monoid ColorAndAttr where
+instance Monoid ColorAndAttrs where
   mempty =
-    ColorAndAttr nothingColor mempty
+    ColorAndAttrs nothingColor mempty
 
 -- right-biased
-instance Semigroup ColorAndAttr where
-  ColorAndAttr color1 attr1 <> ColorAndAttr color2 attr2 =
-    ColorAndAttr
+instance Semigroup ColorAndAttrs where
+  ColorAndAttrs color1 attr1 <> ColorAndAttrs color2 attr2 =
+    ColorAndAttrs
       (if color2 == nothingColor then color1 else color2)
       (attr1 <> attr2)
 
-renderColorAndAttr :: ColorAndAttr -> Tb_color
-renderColorAndAttr ColorAndAttr {color, attr} =
-  tb_attr attr (unMaybeColor color)
+renderColorAndAttr :: ColorAndAttrs -> Tb_attrs
+renderColorAndAttr ColorAndAttrs {color, attrs} =
+  attrs <> unMaybeColor color
 
-onlyColor :: Color -> ColorAndAttr
+onlyColor :: Color -> ColorAndAttrs
 onlyColor color =
   mempty {color = justColor color}
 
-onlyAttr :: Tb_attr -> ColorAndAttr
-onlyAttr attr =
-  mempty {attr}
+onlyAttr :: Tb_attrs -> ColorAndAttrs
+onlyAttr attrs =
+  mempty {attrs}
diff --git a/termbox.cabal b/termbox.cabal
--- a/termbox.cabal
+++ b/termbox.cabal
@@ -18,14 +18,14 @@
   .
   * @<https://hackage.haskell.org/package/termbox-bindings-hs termbox-bindings-hs>@, direct Haskell-flavored bindings.
   * @<https://hackage.haskell.org/package/termbox-bindings-c termbox-bindings-c>@, direct C-flavored bindings.
-homepage: https://github.com/termbox/termbox-haskell
+homepage: https://github.com/awkward-squad/termbox
 license: BSD-3-Clause
 license-file: LICENSE
 maintainer: Mitchell Rosen <mitchellwrosen@gmail.com>, Travis Staton <hello@travisstaton.com>
 name: termbox
 synopsis: termbox
 tested-with: GHC == 9.4.7, GHC == 9.6.3, GHC == 9.8.1
-version: 2.0.0
+version: 2.0.0.1
 
 extra-doc-files:
   CHANGELOG.md
@@ -80,7 +80,7 @@
   import: component
   build-depends:
     base ^>= 4.13 || ^>= 4.14 || ^>= 4.15 || ^>= 4.16 || ^>= 4.17 || ^>= 4.18 || ^>= 4.19,
-    termbox-bindings-hs ^>= 0.1.1,
+    termbox-bindings-hs ^>= 1.0.0,
   exposed-modules: Termbox
   hs-source-dirs: src
   other-modules:
