I'm on a mission to learn ASM. It's going to be difficult at the beginning but in a few years I guess I can master it.
BootAble – FreeDOS boot testing freeware
To obtain direct, low-level access to a system's mass storage drives, SpinRite runs under a GRC-customized version of FreeDOS which has been modified to add compatibility with all file systems. In order to run SpinRite it must first be possible to boot FreeDOS.
GRC's “BootAble” freeware allows anyone to easily create BIOS-bootable media in order to workout and confirm the details of getting a machine to boot FreeDOS through a BIOS. Once the means of doing that has been determined, the media created by SpinRite can be booted and run in the same way.
The participants here, who have taken the time to share their knowledge and experience, their successes and some frustrations with booting their computers into FreeDOS, have created a valuable knowledgebase which will benefit everyone who follows.
You may click on the image to the right to obtain your own copy of BootAble. Then use the knowledge and experience documented here to boot your computer(s) into FreeDOS. And please do not hesitate to ask questions – nowhere else can better answers be found.
(You may permanently close this reminder with the 'X' in the upper right.)
Just for fun. Not everyone is driven by money.I don’t know is your are trying to learn assembly to make money or just for fun or both, but it you are try to make money in general by making software I would be careful. It does not seem clear to me what languages and development tools people make employment decision want the people working on the code to be investing time and money into. But I think that understanding assembly is helpful in understanding how computers work and in my mind it helps understand higher level languages.
Going to check that game out! Want to learn 6502 assembler as well. As a kid I had a Commodore 64 and that was magic to me. Was a little bit too young at the time to understand what was happening when reading the code. But now, almost 40 years later, I should be able to understand (some of) it). Bought a second hand Commdore 64 a few months ago, so I have a real 6502 available. Or actually, a 6510, but I understand that's not actually that different.As strange as this may sound, there is a game (probably more) on Steam that may be helpful. (Making learning fun can be quite helpful for some learners.) Check out https://store.steampowered.com/app/792100/7_Billion_Humans/ . It's visual, but it definitely reminds me of my days learning 6502 assembler.... the instructions you visualize are very close to 6502 assembler. It will probably go on sale at some point, so if you don't think it's worth full price, stick it on your wishlist and wait for a sale notification. Also, I suspect some other games on Steam may also be in a similar category and get recommended to you. (Such as ASTRA-256 Assembler, Shenzhen I/O, TIS-100 .)
There are different assembly languages for different CPUs. Steve did say on a different twit podcast that a thing call a TI launchpad could be used to learn assembly, but it is not x86 assembly. I think the TI launchpad has a small instruction set like maybe 40 instruction.Just for fun. Not everyone is driven by money.
Do you know about Ben Eater on YouTube? If not, you should. He's building a 6502 computer from first principles. https://www.youtube.com/@BenEaterWant to learn 6502 assembler
Ben is cool. Most of what he's doing is beyond me, but I love his no-nonsense matter-of-fact "glitzless" style.Do you know about Ben Eater on YouTube? If not, you should. He's building a 6502 computer from first principles. https://www.youtube.com/@BenEater
org 0x100 ; Code starts at offset 100h
use16 ; Use 16-bit code
mov ax,0900h ; DOS function: AX = 0900h (Show Message)
mov dx,hello ; DX = "Hello World!$"
int 21h ; Call a DOS function: AX = 0900h (Show Message)
mov ax,4c00h ; DOS function: AX = 4c00h (Exit)
int 21h ; Call a DOS function: AX = 4c00h (Exit)
hello db "Hello World!$"
nasm hello.asm -o hello.com
Watched a few of the 6502 series. Very informative. He explains everthing very well at just the right speed (for me). Thanks for mentioning his channel!Do you know about Ben Eater on YouTube? If not, you should. He's building a 6502 computer from first principles. https://www.youtube.com/@BenEater
Yes, I just sent Microsoft another email asking about their developer licenses. OMG it is boring reading software licenses. If they actually email me back and I decide to buy some software from them I will ask why visual studio is so blotted. It would be really cool to have Steve's brain.I think that the most important thing for learning MASM (x86 ASM) is having a truly comfortable development environment.
Assuming you're using Windows, everyone raves about the free Visual Studio Community Edition . You'll need to get MASM's tools which are now also available at no charge from Microsoft. Once you have those things in place, you'll have a very comfortable environment where you can write, edit, debug (single step and view registers and memory, etc.)
Then you'll have an environment where you're COMFORTABLY able to write x86 assembly code that looks like this:
Well really the brain of any one really good at 32-bit or 64-bit intel assembler.Yes, I just sent Microsoft another email asking about their developer licenses. OMG it is boring reading software licenses. If they actually email me back and I decide to buy some software from them I will ask why visual studio is so blotted. It would be really cool to have Steve's brain.
You could always just use an open source assembler like FASM (Flat Assembler 2)Yes, I just sent Microsoft another email asking about their developer licenses. OMG it is boring reading software licenses. If they actually email me back and I decide to buy some software from them I will ask why visual studio is so blotted. It would be really cool to have Steve's brain.
YES! That's the Visual Studio that I meant.I wonder if Visual Studio Code could be used instead of the full Visual Studio?
That also looks like a great learning tool. What's not clear is whether a debugging facility is also integrated? For learning, an integrated debugging facility is SO important. That's what Visual Studio Code offers, and since it's free and the MASM tools are free, that's what I would recommend for Windows users.You could always just use an open source assembler like FASM (Flat Assembler 2)
We're sorry, this download is no longer available
.