10 puts(
"\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcdINFO:\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb\n");
14 asm(
"int 0x15":
"=a"(ax):
"a"(0x88),
"b"(0));;
15 printf(
"\xba\x45Extra memory: %ikB=%iMb\n", ax, ax / 1024);
18 Byte ch, cl, dh, dl = 1;
19 for(
int i = 0; i < dl; i++) {
20 asm(
"int 0x13":
"=b"(bx),
"=c"(cx),
"=d"(dx):
"a"(0x0800),
"d"(i));
26 asm(
"int 0x13":
"=a"(err):
"a"(0x0100),
"d"(i));
27 printf(
"\xba%i: tracks=%i S/T=%i type=%i H=%i disks=%i, err=%i\n", i, ch, cl, bx, dh, dl, err);
28 asm(
"int 0x13"::
"a"(0),
"d"(i));
32 asm(
"int 0x1a":
"=d"(dx),
"=c"(cx):
"a"(0x0400));
37 printf(
"\xba%i%i/%i/%i\n", (ch / 16) * 10 + ch % 16, (cl / 16) * 10 + cl % 16, (dh / 16) * 10 + dh % 16, (dl / 16) * 10 + dl % 16);
40 asm(
"int 0x1a":
"=d"(dx),
"=c"(cx):
"a"(0x0200));
45 printf(
"\xba%i:%i:%i\n", (ch / 16) * 10 + ch % 16, (cl / 16) * 10 + cl % 16, (dh / 16) * 10 + dh % 16);
48 asm(
"int 0x11":
"=a"(ax));
49 printf(
"\xbaInstalled: %b\n", ax);
51 puts(
"\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc\n");
Standard input output library.
void printf(const int str,...)
C-like printf function.
void puts(const int string)
Put string.
#define __start
Must be before main function of program to put this function as first in binary file.