This is my small little function in C:
Code: Select all
int i;
for(i = 0; i < vfs_drive_cnt; i++)
{
char szPath[64];
sprintf(szPath, "%c:\\DATA\\APPS\\CMD.BIN", vfs_drive[i].letter);
asm volatile("push %eax; push %ebx");
asm volatile("int $0x30" : : "a"(14), "b"(szPath));
asm volatile("pop %ebx; pop %eax");
}
Code: Select all
.text:020223B4 push eax
.text:020223B5 push ebx
.text:020223B6 mov eax, [ebp+var_268]
.text:020223BC int 30h ; (NOT A VECTOR!) FAR JMP instruction for CP/M-style calls
.text:020223BE pop ebx
.text:020223BF pop eax
Im compiling on O3