Skip to content

Horizon-NTH/RPN-Calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RPN-Calculator

Release Language Licence

RPN calculator Logo

Introduction

An RPN calculator programmed in ARM7TDMI Assembly. It supports numerous operators and also incorporates floating-point arithmetic, utilizing the IEEE 754 standard.

Installation Instructions

You can also simply install the release version here.

Get Source Code

You first need to clone the repository. Make sure to use git.

git clone https://github.com/Horizon-NTH/RPN-Calculator.git

Get the simulator

Although this program has been written in ARM7TDMI language, it incorporates specific features tailored to operate within this simulator. Therefore, please install the simulator by following the instructions provided on its GitHub page and refer to its documentation to explore all the specifications.

⚠️ To make the code work on the simulator, you need to modify the address of the data section in the assembler.py file and set it to a minimum of 0x1500. You need to modify the value of DATA on line 12 as shown in the following code snippet.

memory_configs = {
    "simulation": {"INTVEC": 0x00, "CODE": 0x80, "DATA": 0x1500},
    "test": {"INTVEC": 0x100000, "CODE": 0x100080, "DATA": 0x101000}
}

Additionally, to run the program entirely, you will need to either press the execution button multiple times or increase the value of runmaxit in the settings.py file, at line 10.

_settings = {"PCbehavior": "+8",                
             "allowuserswitchmode": True,                
             "runmaxit": 10000,
             "maxhistorylength": 1000,
             "fillValue": 0xFF,
             "maxtotalmem": 0x10000,
             }

Documentation

To see how to use the calculator or how does it work, please refer to the wiki.

Dependencies

  • epater is the simulator used to run the code.

License

This project is licensed under the MIT license.