x86-16 Questions

2

I am trying to execute simple multiplication in Assembly. However, I do not see the registers change when the MUL function is called. mov bx, 5 mov cx, 10 mul cx
Rebeccarebecka asked 30/11, 2016 at 16:12

1

Solved

I had an old game... Starflight. I think it came out in '86. Good ol' IBM PC jr days. I figured I'd break out a disassembler and see how it worked. I can see in the little that I've decoded, code s...
Erminna asked 28/8, 2020 at 9:2

2

Solved

I was trying to display 7-segment LED on MDA-8086 kit, but I am stuck at calculating the hexadecimal values for respective digits. I have the code with me, but I don't understand how it actually wo...
Woolcott asked 26/8, 2020 at 5:0

2

Solved

I am trying writing a bootloader and an extremely primitive and basic kernel to learn about bare metal coding practices and techniques. Anyways, I am writing my bootloader using NASM. My code is wo...

1

Solved

This question is inspired by a question asked by someone on another forum. In the following code what does the extended inline assembly constraint Rah and Ral mean. I haven't seen these before: #in...
Dotation asked 1/7, 2020 at 22:30

2

Solved

What really happens on modern PC hardware booted in 16-bit legacy BIOS MBR mode when you store a byte such as '1' (0x31) into the VGA text (mode 03) framebuffer at physical linear address B8000? Ho...
Bourbonism asked 30/4, 2020 at 10:57

2

I am using assembly 8086emu and I need a numbers generator for 8 numbers. I tried to use this piece of code by @johnfound: RANDGEN: ; generate a rand no using the system time RANDSTART: MOV AH, 0...
Phyla asked 19/11, 2016 at 21:52

1

Solved

To multiply a number by any any multiple of 2, I'll shift it those many times. Is there any such technique to multiply a number by 10 in less cycles?
Simian asked 4/4, 2020 at 18:46

1

Solved

On the wikpedia page about .COM files https://en.wikipedia.org/wiki/COM_file it reads: .COM files in DOS set all x86 segment registers to the same value and the SP (stack pointer) register to 0xFF...
Axletree asked 22/3, 2020 at 22:18

5

Solved

I need to emulate assembly for 8086 program in Ubuntu. I searched repository and I found 8085 emulator which is not similar to 8086. Is there any 8086/88 assembly emulator for ubuntu?
Rothermere asked 18/12, 2011 at 21:50

1

When the kernel been loaded into the memory, can it still can use BIOS interrupts? Such as mov AX,0E820h int 15h or something.
Dudleyduds asked 8/2, 2020 at 2:3

1

Solved

1I am writing in TASM 3.0 on DosBox 0.74 and I am trying to write in Mode x (Tweaked 13h, unchained mode 13), and I ran into a problem, how you can see in the image, every line is printed, but in e...
Guillemette asked 4/2, 2020 at 16:13

1

Solved

I am writing in TASM 3.0 on DosBox 0.74 and I am trying to write in Mode x (Tweaked 13h, unchained mode 13), but here you can see in the image, it's not quite right. It seems that plane 1 (second p...
Prankster asked 22/1, 2020 at 12:16

3

I have an 8086 CPU emulator. It emulates only 8086 instructions. I am searching now for a C compiler to target this emulator with. Is there any C compiler out there that can do this? Also, ...
Telephony asked 20/12, 2010 at 19:19

1

Solved

I was experimenting with the NASM assembler, when I came across a problem: mov (sp),bx mov [sp],bx The first instruction is assembled properly while the second one is not, and gives me the error...
Sandler asked 7/1, 2020 at 13:49

1

I have created the game "Angry Birds" in assembly 8086. My main problem now is that I want to play the song of the game while the main loop is running. I've already written the code for the music. ...
Carnatic asked 8/5, 2019 at 14:1

2

Solved

I have learned about compilers and assembly language, so I'd like to write my own assembler as an exercise. But there I have some questions; How can I compute the address for segments such as @DAT...

2

Solved

I am trying to understand a program to get arrow keys. Here is the code: int getkeys( ) { union REGS i,o; while(!kbhit( )); i.h.ah=0; int86(22,&i,&o); return(o.h.ah); } can someo...
Chesser asked 7/9, 2019 at 14:11

1

I am currently writing a bootloader in x86 NASM assembly designed to load a kernel (R.BIN) from a FAT16 filesystem and jump to it. I have been writing the bootloader to a blank image that I have mo...
Gar asked 22/7, 2019 at 23:39

2

The movsb (move string, bytes) instruction fetches the byte at address ds:si, stores it at address es:di, and then increments or decrements the si and di registers by one. I know esi,si and e...

1

Solved

My question is about the logic of dynamic memory allocation in assembly (particularly, MASM). There are lot of articles on this topic and all of them rely on the use of malloc or brk. However, acco...

5

Solved

I recently had a question, I know that a pointer to a constant array initialized as it is in the code below, is in the .rodata region and that this region is only readable. However, I saw in patter...
Passible asked 24/6, 2019 at 20:59

1

I just wanted to ask: why is it that when I write : MOV DL, [BX] it works, but when I write: MOV DL, [AX] it doesn't?
Pilate asked 25/6, 2019 at 17:42

4

Solved

I'd like to write a little DOS program (my first one) and I'm a little bit inexperienced. For the program, I need more than 64 kilobytes of (conventional) memory. How can I get extra memory? Ideal...
Crew asked 29/5, 2016 at 11:22

2

Solved

I'm trying to set the handler of Interrupt 28h to my own routine, restore all the registers and flags involved, and restore the original Interrupt handler. I'm using NASM Assembler, under DOSBox an...
Bandylegged asked 1/6, 2019 at 2:5

© 2022 - 2024 — McMap. All rights reserved.