Description
.
├── ibm360vm - IBM360 Virtual Machine
│ ├── CMakeLists.txt
│ └── ibm360vm.c
├── pli2asm - PL1 Translator to IBM360 asm
│ ├── CMakeLists.txt
│ ├── pli2asm.l - Flex source code for PL1 tokenizer
│ └── pli2asm.y - Bison source code for PL1 parser
├── pli2asm_v1 - Original PL1 Translator to IBM360 asm
│ ├── CMakeLists.txt
│ └── pli2asm_v1.c
├── asm2obj - IBM360 asm Compiler to executable file
│ ├── CMakeLists.txt
│ └── asm2obj.c
├── build.sh - for build
├── CMakeLists.txt - for build
├── run.sh - for run
├── Runfile - for run
├── README.md
└── examppl.pli
Compilation
- First way:
$ ./build.sh <target>
where target is a name of a project - Second way: use CLion projects for every target
Execution
$ ./run.sh [o1|o2|o3]
o1 - to pli2asm_v1 translate
o2 - to asm2obj translate
o3 - to run vm
Dependencies
For Ubuntu:
- Flex
$ sudo apt install flex
- Bison
$ sudo apt install bison
- ncurses
$ sudo apt install libncurses5-dev libncursesw5-dev
For Windows (assuming you use MSYS2):
- Flex
$ pacman -S flex
- Bison
$ pacman -S bison
- ncurses
$ pacman -S ncurses
Also, you should change value of MSYS_DIR
var in Windows Environments Variables