MSAP_2016 Submitted by : Mohammad Adnaan
1206039
Section A
SAP MANUAL
Reset:
At the beginning of each run pc has to be reset once. While ‘reset’ button
is in 1 position one logic toggle in ‘single step clk’ will reset the pc.
Program loading:
Auto load:
After resetting ‘auto_load’ button in 1 position will automatically start
program loading. All other buttons should be in ‘0’ position.
‘Load_finish’ button in 1position indicates program is loading.
When ‘Load_finish’ button becomes 0 program loading is finished .
Manual load:
After resetting ‘manual_load’ button in 1 position will initiate program
loading from hex keypad. All other buttons should be in ‘0’ position.
After that ‘addr/data’ button in 1 position indicates now memory address
of RAM will be received from keypad.
Then ‘addr/data’ button in 0 position will receive data from keypad and
save to the addressed memory location of the previous step.
After all inputs giving finished make both manual_load’ & ‘addr/data’
button in 0 position. Then reset the pc in the above mentioned method
before program run.
PC run:
Full Run:
‘full/single step run’ button in 1 position & all other buttons should be
in 0 position.
Then ‘pc start’ button in 1 position will start the pc.
Single step run:
‘full/single step run’ button in 0 position & all other buttons should be in
0 position.
Then ‘pc start’ button in 1 position will start the pc.
‘single step clk’ button will serve as the clock for single step run.
Input method from keypad:
While manual programming only pressing the key buttons will do
the job.
In single step run after giving the input firstly one logic toggle in
‘single step clk’ then one logic toggle in ‘input ready’ will
complete the process of giving input.
In full run only one logic toggle in ‘input ready’ will complete the
process of giving input.
Programming:
The program should be written in a file named Code.txt file.
All digits are considered as hexadecimal number.
All letters must be upper case. No extra blank space.
All programs must be terminated by HLT and all function must be
terminated by RET.
Syntax:
*Direct addressing format: CALL 000A
*Indirect addressing format: XCHANGE[0010],B
*Data allocation to a particular memory: 0010 23 (saves 23H in
0010H memory location)
*Writing subroutine function starting from a particular address:
First write the address location in a line then from next line start writing
the function. For example: 000A
MOV B,75
RET
Writes a function to move byte 75H to register B at memory location
000AH . That means this function can be accessed by CALL 000A
operation.
Program must be written sequential to the memory address. For example ,
0020 23 can’t be written before 0010 23 instruction.
Troubleshooting:
In case the SAP hang and even resetting it does not reset control rom
counter. Make all buttons in control panel in 0 position except pc start in
1 position. Then one logic toggle in input ready button. Then change pc
start to 0 position, Then reset the pc again will complete the process.