A .build.yml => .build.yml +20 -0
@@ 0,0 1,20 @@
- setup: |
go get ./...
- format: |
go fmt $(go list ./... | grep -v /vendor/)
go vet $(go list ./... | grep -v /vendor/)
- test: |
go test -cover -race $(go list ./... | grep -v /vendor/)
- build: |
M .gitignore => .gitignore +2 -0
@@ 36,3 36,5 @@ profile.*
# Casio and code files
M README.md => README.md +29 -12
@@ 1,18 1,35 @@
# G1M Decompiler
[![Join the chat at https://gitter.im/G1M-Decompiler/Lobby](https://badges.gitter.im/G1M-Decompiler/Lobby.svg)](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.
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.
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
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
$ go get -u git.sr.ht/~humaid/g1mdecompiler
$ go install git.sr.ht/~humaid/g1mdecompiler
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.
$ g1mdecompiler [file] > [output]
A go.mod => go.mod +3 -0
@@ 0,0 1,3 @@