diff options
Diffstat (limited to 'fig-emulator-gb/main/Main.hs')
| -rw-r--r-- | fig-emulator-gb/main/Main.hs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/fig-emulator-gb/main/Main.hs b/fig-emulator-gb/main/Main.hs new file mode 100644 index 0000000..33bf382 --- /dev/null +++ b/fig-emulator-gb/main/Main.hs @@ -0,0 +1,29 @@ +{-# Language ApplicativeDo #-} + +module Main where + +import Fig.Prelude + +import Options.Applicative + +import qualified Data.ByteString as BS + +import Fig.Emulator.GB.CPU + +newtype Options = Options + { romPath :: FilePath + } deriving Show + +parseOptions :: Parser Options +parseOptions = do + romPath <- argument str (metavar "PATH") + pure Options{..} + +main :: IO () +main = do + opts <- execParser $ info (parseOptions <**> helper) + ( fullDesc + <> header "fig-emulator-gb - Game Boy emulator" + ) + rom <- BS.readFile $ romPath opts + testRun rom |
