Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

blind student #5

Open
tcpipchip opened this issue Aug 24, 2022 · 6 comments
Open

blind student #5

tcpipchip opened this issue Aug 24, 2022 · 6 comments

Comments

@tcpipchip
Copy link

Hi, can you help to make to software web interface for my BLIND student to program on 8086 ?

Miguel

@YatharthVyas
Copy link
Collaborator

Yes sure! This is something we want to implement in the near future.

The homepage and instructions page have support for screen readers and keyboard navigation to some extent.

The compiler page needs some work.

If you have any ideas about what potential features you would want to see in this emulator, please do let us know!

@tcpipchip
Copy link
Author

tcpipchip commented Sep 7, 2022

Sorry for the long delay @YatharthVyas

I have some suggestions to make the Simulator better... i am using all the week with students

-An option to control the SPEED of RUN execution..
-An option to show the Register in Decimal/Hex too
-Service AH=2 of INT 0x21 NOT JUMP to the next line without i send 13,10 (CR,LF), please, only jumps to the next line if i send 13 and 10
-Service AH=1 of INT 0x21 ask to the student type a character...but...not need to confirm to
image
-If the compiles SUCCESSFULL, show some text anywhere or make the sound
-ShortCurt keys to switch to program edition, for example
CRTL-SHIFT 1, goes to editor
CRTL-SHIFT 2, goes to INPUT
CRTL-SHIFT 3, goes to OUTPUT
CRTL-SHIFT 4, goes to a LINE wich shows a line text with all register values
CRTL-SHIFT 5, goes to a LINE wich shows a line text with all regiter flags values
CRTL-SHIFT 6, goes to a LINE wich shows a line text with compile error
CRTL-SHIFT 7, goes to MEMORY DUMP
well, shortcurts to all , wich includes COMPILE, RUN, NEXT, STOP :(

if you put the cursor on first columm of each line of NOTEPAD the screen reader sintetizes the audio...

But on 8086 this no happens

image

Blind student message...

I can't find the edit box to write code with keyboard navigation commands, and I don't use a mouse because as far as I know, there is no way for NVDA to read the content as the mouse pointer passes over it.

he uses the NVDA software !

@YJDoc2
Copy link
Owner

YJDoc2 commented Sep 8, 2022

Hey @tcpipchip Thanks for such a detailed message! I apologies that we had not considered many of these things when making this project.

We went over what you have suggested, and some of them are definitely implementable, such are execution speed, decimal/hex display, and ctrl+shift+num shortcuts. For others such as input confirmation, or the audio issue with the text area, we will need to check if the libraries that we have used support them, or what other possible ways are there to do that.

This all said, currently there are only 4 of use maintaining this in our spare time, so the changes will take quite some time to implement. Depending on how we get to it, this can take few months to implement.

So, in the meantime, can I ask you if you have tried the commandline version of this? This repo, on which you have opened the issue has the commandline version of the same emulator, and the web resides in another repo.

The commandline version has support for interpreter mode, which will stop after each line and give you prompt for either printing registers and memory, or going to next instruction (if its function call, it will go to the function body). It also prints the next instruction to be executed before the prompt.

The cmd version takes a text file input, so you can use any text editor to write the code, similar to how you would do for C or JS or others.
Currently there is no support for displaying values in decimal, but it is easy to implement and can be done quite quickly form our side.

For using it, one will need to install rust compiler, clone this repo, compile the program using cargo build --release and copy the binary from output directory to a directory where one will use it. Then one can run it like how one runs gcc or python -

./binary-name <code-file-path> [-i] [-d]

The -i flag will run it in interpreter mode, and the -d flag is what I'm suggesting for the decimal output (not yet implemented).

The print statements in the code will print the registers/memory to cmd screen.

I'm not familiar with NVDA, so not sure how much better that option will be, but if possible can you try it and let us know if that helps? If you have any issues for compiling/running the cmd version, please let us know.

Thanks again for giving such detailed feedback, and apologies again for it not working well with screen readers and other input devices

@tcpipchip
Copy link
Author

tcpipchip commented Sep 8, 2022

Hi thank you so much for the explanation!
I understand!

Can you verify why this error
text1: db "hello"
text2: db "teste"
start:
mov si, offset text1
mov di, offset text2

image

And could you compile to us the command line version the and create the binary code to me send to our BLIND student ?

and, why

mov al,'a' or mov al,"a" not works ?

and macro accepts more that one parameter ? looks that only one!

again thanks!

@YJDoc2
Copy link
Owner

YJDoc2 commented Sep 19, 2022

Hey @tcpipchip , Apologies for the late reply 😓

So the first error you have encountered is an issue from our side where declaring multiple text consts using db given any issues. This is due to the way I have written the lexer, and I am looking for ways to address this.

mov al,'a' or mov al,"a" not works ?

This is because 'a' is taken as a single character with ascii values, verses "a" is taken as a string. That is a choice I had made consciously similar to how in C or Rust single quotes indicate a single character.

and macro accepts more that one parameter ? looks that only one!

Yes macros should work with multiple params, are there any particular issues you have noticed?

And could you compile to us the command line version the and create the binary code to me send to our BLIND student ?

Sorry, but we cannot currently distribute the compiled version of this code. This repo was intended to be for use as a library in other projects or for cmd use, and the web version was for use without installation ; but as you have pointed out there are several issue with the web version still.

You can install rust and cargo and compile this yourself, the instructions for it are in the readme here

Again, apologies for late response, hope this helps.

Thank you :)

@Vatsalsoni13
Copy link
Collaborator

Vatsalsoni13 commented Jun 29, 2023

Hello @tcpipchip ,
Wanted to give you a quick update we have added few features for accessibility you could give it a try
More Info

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants