----------------------------------------------------------------------
-- FILE:              Arm.hs
-- DESCRIPTION:       Main file for running and debugging ARM
--                    assembly source files.
-- DATE:              04/04/2001
-- PROJECT:           VARM (Virtual ARM), for CSE240 Spring 2001
-- LANGUAGE PLATFORM: Hugs
-- OS PLATFORM:       RedHat Linux 6.2
-- AUTHOR:            Jeffrey A. Meunier
-- EMAIL:             jeffm@cse.uconn.edu
----------------------------------------------------------------------



module Arm
where



----------------------------------------------------------------------
-- Standard libraries.
----------------------------------------------------------------------



----------------------------------------------------------------------
-- Local libraries.
----------------------------------------------------------------------
import Assembler
import qualified Debugger
import qualified ExecutionUnit
import Loader
import Program



----------------------------------------------------------------------
-- Run a program.
----------------------------------------------------------------------
run
  :: String     -- program's file name
  -> IO ()

run fileName
  = do progOrError <- asmFile fileName
       case progOrError of
         Left prog
           -> ExecutionUnit.run prog
         Right err
           -> putStrLn err



----------------------------------------------------------------------
-- Debug a program.
----------------------------------------------------------------------
dbg
  :: String     -- program's file name
  -> IO ()

dbg fileName
  = do progOrError <- asmFile fileName
       case progOrError of
         Left prog
           -> Debugger.dbg prog
         Right err
           -> putStrLn err



----------------------------------------------------------------------
-- eof
----------------------------------------------------------------------
