Тёмный

Retrocoding - Assembly 16-bit MS-DOS. Setup tool, fungsi, prosedur, input & refactoring. 

Let's Just Code
Подписаться 7 тыс.
Просмотров 300
50% 1

Опубликовано:

 

14 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 19   
@maxmuster7003
@maxmuster7003 3 года назад
Personaly i like to make some very special batch files for DOS/DOSBOX and i put all instructions inside for a tiny routine to build an executable com file with a little help from Debug. Example: COLOR.BAT is for the text mode with 80x25 collumns/rows and 16 colors. Start on DOS prompt with a color attached. @echo off REM Need one parameter(%1) attached. REM Usage: *Color.bat* color REM Example: COLOR.BAT 1b echo acs:100>tmp.deb echo mov ax,b800>>tmp.deb echo mov ds,ax>>tmp.deb echo mov cx,820>>tmp.deb echo xor di,di>>tmp.deb echo mov al,%1>>tmp.deb echo mov [di+1],al>>tmp.deb echo add di,2>>tmp.deb echo dec cx>>tmp.deb echo jnz 010C>>tmp.deb echo ret>>tmp.deb echo.>>tmp.deb echo n Color.com>>tmp.deb echo rcx>>tmp.deb echo 16>>tmp.deb echo wcs:100>>tmp.deb echo q>>tmp.deb debugnul del tmp.deb Color.com del Color.com
@KodingAjaDulu
@KodingAjaDulu 3 года назад
Well, DEBUG is able to produce COM files. My applications are mainly EXE files.
@maxmuster7003
@maxmuster7003 3 года назад
@@KodingAjaDulu I can make exe files with MASM too, but that need a lot more commands to make a source file to assemble.
@KodingAjaDulu
@KodingAjaDulu 3 года назад
Well' I'd prefer to just use Watcom's Toolchain as it's able to run on my Linux and macOS boxes via DOS. My windows machine is a little bit outdated and underpowered. I stopped to use it for streaming after seeing how poor the picture quality is.
@maxmuster7003
@maxmuster7003 3 года назад
Hint: DOSBOX emulates a PC with an INTEL 80386 CPU/FPU with 32 bit register/instructions. Debug from the Freedos Operating System: (provide 32 bit register/instructions) Download and extract debug into the mounted folder of DOSBOX. www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos/pkg-html/debug.html
@KodingAjaDulu
@KodingAjaDulu 3 года назад
No, I don’t intend to use more advanced instructions. I am deliberately limiting myself to 8086 with no FPU.
@maxmuster7003
@maxmuster7003 3 года назад
@@KodingAjaDulu But we can easy use all 32 bit register as an address-register within the 16 bit real address mode with 64kb segment size of DOSBOX using an address size prefix.
@KodingAjaDulu
@KodingAjaDulu 3 года назад
My target machine is Tandy. It’s 8088 machine with access only to conventional 640K memory
@maxmuster7003
@maxmuster7003 3 года назад
@@KodingAjaDulu Thanks.
@maxmuster7003
@maxmuster7003 3 года назад
@@KodingAjaDulu Which screen size is the text mode and is the segment address in 0b000h for monochrome display?
@maxmuster7003
@maxmuster7003 3 года назад
We do not need to set the segment address of the stack segment register SS with using MASM the macro assembler from MS. Are you sure that you need it?
@KodingAjaDulu
@KodingAjaDulu 3 года назад
That’s what I saw on their calling convention document.
@maxmuster7003
@maxmuster7003 3 года назад
@@KodingAjaDulu Ok. I never set SS. Personaly i do not use the calling convention. I prefer to use mov and mov instructions to and from the data segment, because push and pop instructions are executing much slower than mov and mov instructions specially on older CPU before Pentium 4. And we can use the value of the data segment from inside and outside nested subroutines multiple times without to take care about the stack pointer. And we can get the best performance if we put all parameter into register only without a ram access. The stack size of all my executables for DOS is 10h bytes.
@KodingAjaDulu
@KodingAjaDulu 3 года назад
After reading I think it’s me that’s at fault. SS shouldn’t be set as this is set automatically bu the loader to the end of the program.
@giriaditya5992
@giriaditya5992 2 года назад
programming jenis apa lagi ini mas haha
@KodingAjaDulu
@KodingAjaDulu 2 года назад
Program zaman dulu
Далее
7 Essential Command Line Tools (2022)
9:12
Просмотров 216 тыс.
Perbedaan BIOS & UEFI dan cara memrogramnya.
22:18
Просмотров 2,7 тыс.
tentang PDNS dan ransomware
16:44
Просмотров 7 тыс.
Become a shell wizard in ~12 mins
12:25
Просмотров 253 тыс.
C++ vs Rust: which is faster?
21:15
Просмотров 398 тыс.
Redis за 20 минут
23:22
Просмотров 146 тыс.
Arch Linux Experience - Hyprland
39:02
Просмотров 171 тыс.
Siapa Yang Bisa Pakai MS-DOS?
11:35
Просмотров 11 тыс.