read the specifications carefully. The result should match the screenshoot below to get full credit.
I already did half of the assignment. I need help to complete it. I attached the code file below. Please pull the LaserS ystem.asm file and continue working on it. Thanks!
INCLUDE Irvine32.inc
.data
control byte 0h
msg0 byte “Medical Laser Syste”, 0
msg1 byte “Start? y/n: “, 0
msg1a byte “system started”, 0
msg2 byte “Standby? y/n: “, 0
msg2a byte “System in standby mode”, 0
msg 2b byte “Standy bit: “, 0
msg3 byte “Ready? y/n: “,0
msg3a byte “System in ready mode”, 0
msg3b byte “Ready bit: “, 0
msg4 byte “Fire? y/n”, 0
msg4a byte “System in fire mode”,0
msg10 byte “Invalid input”, 0
.code
main PROC
mov edx, offset msg0
call WriteString
call crlf
start:
mov edx, offset msg1
call Write String
call readchar; get the user input yes enter Standby mod
or al, 20h; convert Y it to lowercase letter
cmp al, “y”; cmp if both equal jump to standby
jz standby; jmp to standby mode
cmp al, “n”; cmp uppercase N to n
jz start; if equal jmp to start
jmp invalid
standby:
mov edx, offset msg2a
call writestring
call crlf
mov edx ,offset msg2b
call WriteString
call readInt
ready:
mov edx, offset msg3
call WriteString
call readInt
firing:
mov edx , offset msg4
call WriteString
call readInt
invalid:
mov edx, offset msg10
call Writestring
call crlf
jmp start
exit
main ENDP
end main
Project Description
Write a program that controls the laser system at a medical devices company. The program includes a main procedure which gets user inputs and uses the input values for the OK button press, CANCEL button press, the SET button press, the CLEAR button press, and other functionalities on the touch screen. The program should generate the output which is shown on the sample run/output below.
Specifications
Define a 8-bit control variable and initialize it with 0.
Declare status messages for the program output.
Create a main procedure to get user inputs.
Use ‘y’ for the OK button press and ‘n’ for the CANCEL button press.
Display an error message if user input is neither ‘y’ nor ‘n’.
Note that the system has four different modes: Start, Standby, Ready, and Fire.
Assume the user enters 1 to set the bit and enters 0 to clear the bit.
Set the MSB of the control byte to confirm the laser is in the standby mode.
Set the LSB of the control byte to confirm the laser is in the ready mode.
Make sure the MSB and the LSB of the control variable should be set before firing the laser.
Use the following instructions along with other instructions for your program: CMP, JZ, SHL, RCL, RCR, and OR.
Test the program and generate the output.
Last Completed Projects
topic title | academic level | Writer | delivered |
---|