Find Jobs
Hire Freelancers

SIC Simulator

$30-5000 USD

Closed
Posted over 20 years ago

$30-5000 USD

Paid on delivery
**SIC Simulator **The SIC Simulator must run on a UNIX Based system. It must execute a SIC program that has been assembled by the SIC Assembler. It should have the following commands: START --- S, RUN --- R, ENTER --- E, DUMP --- D, HCOUNT --- H, BREAKPOINT --- B, QUIT --- Q P.S. The previous SIC Simulator program you completed for another user in July '03 hopefully is similar to the specifications my professor assigned below. The previous user did mention using a textbook by author: Leland Beck, which is the same my class is using "Systems Programming"...thank you for your consideration, please accept my project!! ## Deliverables 1) The project must be written using the C++ language (not Visual C++). Each software package must be designed to be user friendly and developed on a UNIX based system. All modules must be documented in the following manner. /* Module name: Programmer: Date: Last modification date: Description: Module inputs: Module outputs: Known bugs or special requirements: */ 2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request. 3) Exclusive and complete copyrights to all work purchased. (No GPL, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site). Below are the specifications from the professor, hopefully it matches what you have already completed for the previous user: **SIC Simulator**** **The SIC Simulator must run on a UNIX Based system. It must execute a SIC program that has been assembled by the SIC Assembler. It should have the following commands: START --- S, RUN --- R, ENTER --- E, DUMP --- D, HCOUNT --- H, BREAKPOINT --- B, QUIT --- Q _Start _Enter S to cause the simulator to read 128 bytes of date from device 00 into memory, starting at address 0000. _Run _This command causes the simulator to begin execution of SIC machine language instructions from a program in memory. R R address If an address is specified in the command, the next instruction to be executed is the one starting at that address. If no address is specified, the next instruction to be executed is the one following the last previously executed instruction or the instruction beginning at address 0000. Execution continues until an error occurs or the number of instructions specified by HCOUNT have been executed or a breakpoint specified by BKPT is reached. _Enter _This command is used to enter values into registers or memory locations. The two forms are: E Rn xxxxxxxx E address xxxxxxxx Rn is a register identifier (RA, RX, RT, etc.) followed by the data to be entered into the register given in hexadecimal (two hex. digits) In the second case, any number of bytes of data may by entered into memory, starting at the specified address. Each byte must be a hex digit. _Dump _This command is used to display the contents of registers and memory locations. Three possible forms: D R D startaddr - endaddr D R, startaddr - endaddr If R is specified, the contents of ALL registers are displayed in hexadecimal, along with the current value of the condition code. If startaddr - endaddr are specified, the contents of the indicated range of addresses are displayed; maximum of 320 (decimal) bytes can be dumped at one time. Memory should be displayed in rows of 16 bytes each, the actual dump may include some bytes before startaddr and some after endaddr. ## Platform _Hcount _This command is used to specify the maximum number of SIC instructions to be executed in response to a RUN command. H n where n is the number of given by 1 to 4 decimal digits. Maximum number is 9999. After n instructions have been executed, the simulator displays: n INSTRUCTIONS EXECUTED P = xxxxxxxx where xxxxxxxx is the current address in the program counter. The resume execution enter R. _Bkpt _This command is used to set a breakpoint to control instruction execution. The form is BKPT xxxxxxxx where xxxxxxxx is the address to stop execution. When you reach a breakpoint print: BREAKPOINT REACHED p = xxxxxxxx _Quit _This command is used to terminate the simulation.
Project ID: 2985649

About the project

1 proposal
Remote project
Active 20 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
1 freelancer is bidding on average $47 USD for this job
User Avatar
See private message.
$46.75 USD in 30 days
5.0 (8 reviews)
1.8
1.8

About the client

Flag of UNITED STATES
United States
0.0
0
Member since Sep 29, 2003

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.