lmc/main.go

22 lines
442 B
Go
Raw Normal View History

2016-07-10 14:35:33 +02:00
package main
import (
"fmt"
"os"
2016-07-10 14:35:33 +02:00
)
func main() {
2016-10-20 00:12:24 +02:00
if len(os.Args) != 2 {
2016-10-20 01:47:07 +02:00
fmt.Printf("usage: %s file\n", os.Args[0])
} else if file, err := os.Open(os.Args[1]); err != nil {
fmt.Printf("Cannot open file: %s\n", err)
} else if code, err := Assemble(file); err != nil {
fmt.Printf("Assembly failed: %s\n", err)
} else if err = Run(code); err != nil {
fmt.Printf("Runtime error: %s\n", err)
} else {
os.Exit(0)
2016-10-20 00:12:24 +02:00
}
2016-10-20 01:47:07 +02:00
os.Exit(1)
2016-07-10 14:35:33 +02:00
}