A .build.yml => .build.yml +20 -0
@@ 0,0 1,20 @@
+image: archlinux
+packages:
+ - go
+sources:
+ - https://git.sr.ht/~humaid/g1mdecompiler
+tasks:
+ - setup: |
+ cd g1mdecompiler
+ go get ./...
+ - format: |
+ cd g1mdecompiler
+ go fmt $(go list ./... | grep -v /vendor/)
+ go vet $(go list ./... | grep -v /vendor/)
+ - test: |
+ cd g1mdecompiler
+ go test -cover -race $(go list ./... | grep -v /vendor/)
+ - build: |
+ cd g1mdecompiler
+ go build
+
M .gitignore => .gitignore +2 -0
@@ 36,3 36,5 @@ profile.*
# Casio and code files
*.G1M
*.txt
+
+g1mdecompiler
M README.md => README.md +29 -12
@@ 1,18 1,35 @@
# G1M Decompiler
-[](https://gitter.im/G1M-Decompiler/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-This program is able to decompile Casio Basic code from files generated by Casio calculators which save in .g1m format.
-The program is incomplete, so it might not be able to decompile code perfectly.
+## 1. Purpose
+The goal of G1M Decompiler is to allow programmers to decode Casio Basic's "`.g1m`"
+file into a readable text similarly what is shown on the calculator.
-## Notice
-This program does not include any code from other sources. And no proprietary code has been looked into.
-This program is a simple character decoder and encoder and not a program for reverse engineering.
-No Terms of Use or copyright law has been violated in making this program.
+This is a one-way converter, and not all symbols are supported by this program (most
+common symbols are).
-## How to run
-```
-go run main.go
+## 2. Requirements
+
+The following packages must be installed on your system
+
+- Go
+- Git
+
+You also need a Casio Basic file to decode.
+
+## 3. Copying and contributing
+
+This program is written by Humaid AlQassimi, and is distributed under
+the [MIT](https://humaidq.ae/license/mit) license.
+
+## 4. Download and install
+
+```sh
+$ go get -u git.sr.ht/~humaid/g1mdecompiler
+$ go install git.sr.ht/~humaid/g1mdecompiler
```
-## Contributing
-We appreciate your contributions! Make sure your code is following standard and is run through `golint` before committing.
+## 5. Usage
+The program outputs the decoded program to standard output.
+```sh
+$ g1mdecompiler [file] > [output]
+```
A go.mod => go.mod +3 -0
@@ 0,0 1,3 @@
+module git.sr.ht/~humaid/g1mdecompiler
+
+go 1.13