]> pd.if.org Git - mmurtl/commitdiff
autocommit for file dated 1995-02-09 16:01:34
authorRichard Burgess <>
Thu, 9 Feb 1995 16:01:34 +0000 (16:01 +0000)
committerNathan Wagner <nw@hydaspes.if.org>
Mon, 17 Oct 2016 14:03:48 +0000 (14:03 +0000)
msamples/othersrc/memtest.asm [new file with mode: 0644]

diff --git a/msamples/othersrc/memtest.asm b/msamples/othersrc/memtest.asm
new file mode 100644 (file)
index 0000000..618f281
--- /dev/null
@@ -0,0 +1,166 @@
+\r
+.DATA\r
+EXTRN _AllocPage FWORD\r
+EXTRN _AllocOSPage FWORD\r
+EXTRN _AllocDMAPage FWORD\r
+EXTRN _DeAllocPage FWORD\r
+EXTRN _QueryPages FWORD\r
+EXTRN _GetPhyAdd FWORD\r
+EXTRN _AliasMem FWORD\r
+EXTRN _DeAliasMem FWORD\r
+EXTRN _ReadKbd FWORD\r
+L_lit DB 69,82,82,79,82,32,37,100,32,111,110,32,71,101,116,80\r
+ DB 104,121,65,100,100,46,13,10,0,65,108,105,97,115,105,110\r
+ DB 103,32,74,111,98,32,49,32,76,105,110,101,97,114,32,65\r
+ DB 100,100,114,101,115,115,32,37,48,56,120,13,10,0,80,104\r
+ DB 121,115,105,99,97,108,32,65,100,100,114,101,115,115,32,105\r
+ DB 115,32,32,32,32,32,32,32,32,32,32,32,37,48,56,120\r
+ DB 13,10,0,69,82,82,79,82,32,37,100,32,111,110,32,65\r
+ DB 108,105,97,115,77,101,109,46,13,10,0,69,82,82,79,82\r
+ DB 32,37,100,32,111,110,32,71,101,116,80,104,121,65,100,100\r
+ DB 46,13,10,0,65,108,105,97,115,32,76,105,110,101,97,114\r
+ DB 32,97,100,100,114,101,115,115,32,105,115,32,32,32,37,48\r
+ DB 56,120,13,10,0,80,104,121,115,105,99,97,108,32,65,100\r
+ DB 100,114,101,115,115,32,105,115,32,32,32,32,32,32,32,37\r
+ DB 48,56,120,13,10,0,80,114,101,115,115,32,97,32,107,101\r
+ DB 121,32,116,111,32,99,111,110,116,105,110,117,101,46,46,46\r
+ DB 13,10,0,69,82,82,79,82,32,37,100,32,111,110,32,68\r
+ DB 101,65,108,105,97,115,77,101,109,46,13,10,0\r
+PUBLIC _Alias DD 0h\r
+PUBLIC _AliasPhy DD 0h\r
+PUBLIC _OSPhy DD 0h\r
+\r
+\r
+.CODE\r
+EXTRN _fopen: NEAR\r
+EXTRN _fclose: NEAR\r
+EXTRN _remove: NEAR\r
+EXTRN _rename: NEAR\r
+EXTRN _fgetc: NEAR\r
+EXTRN _fgets: NEAR\r
+EXTRN _fputs: NEAR\r
+EXTRN _fputc: NEAR\r
+EXTRN _printf: NEAR\r
+EXTRN _sprintf: NEAR\r
+EXTRN _fprintf: NEAR\r
+EXTRN _ftell: NEAR\r
+EXTRN _rewind: NEAR\r
+EXTRN _fseek: NEAR\r
+EXTRN _fread: NEAR\r
+EXTRN _fwrite: NEAR\r
+EXTRN _strcpy: NEAR\r
+EXTRN _strncpy: NEAR\r
+EXTRN _strcat: NEAR\r
+EXTRN _strncat: NEAR\r
+EXTRN _strcmp: NEAR\r
+EXTRN _strncmp: NEAR\r
+EXTRN _strlen: NEAR\r
+EXTRN _strchr: NEAR\r
+EXTRN _iscntrl: NEAR\r
+EXTRN _isspace: NEAR\r
+EXTRN _isdigit: NEAR\r
+EXTRN _isupper: NEAR\r
+EXTRN _islower: NEAR\r
+EXTRN _ispunct: NEAR\r
+EXTRN _isalpha: NEAR\r
+EXTRN _isxdigit: NEAR\r
+EXTRN _isalnum: NEAR\r
+EXTRN _isgraph: NEAR\r
+EXTRN _toupper: NEAR\r
+EXTRN _tolower: NEAR\r
+EXTRN _exit: NEAR\r
+PUBLIC _main:\r
+       PUSH EBP\r
+       MOV EBP,ESP\r
+       SUB ESP,8\r
+       PUSH 1\r
+       PUSH 3072\r
+       PUSH OFFSET _OSPhy\r
+       CALL FWORD PTR _GetPhyAdd\r
+       MOV DWORD PTR [EBP-4], EAX\r
+       MOV EAX,DWORD PTR [EBP-4]\r
+       AND EAX,EAX\r
+       JZ L_1\r
+       PUSH OFFSET L_lit+0\r
+       PUSH DWORD PTR [EBP-4]\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+L_1:\r
+       PUSH OFFSET L_lit+25\r
+       PUSH 3072\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+       PUSH OFFSET L_lit+62\r
+       PUSH _OSPhy\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+       PUSH 3072\r
+       PUSH 8000\r
+       PUSH 1\r
+       PUSH OFFSET _Alias\r
+       CALL FWORD PTR _AliasMem\r
+       MOV DWORD PTR [EBP-4], EAX\r
+       MOV EAX,DWORD PTR [EBP-4]\r
+       AND EAX,EAX\r
+       JZ L_2\r
+       PUSH OFFSET L_lit+99\r
+       PUSH DWORD PTR [EBP-4]\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+L_2:\r
+       PUSH 3\r
+       PUSH _Alias\r
+       PUSH OFFSET _AliasPhy\r
+       CALL FWORD PTR _GetPhyAdd\r
+       MOV DWORD PTR [EBP-4], EAX\r
+       MOV EAX,DWORD PTR [EBP-4]\r
+       AND EAX,EAX\r
+       JZ L_3\r
+       PUSH OFFSET L_lit+123\r
+       PUSH DWORD PTR [EBP-4]\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+L_3:\r
+       PUSH OFFSET L_lit+148\r
+       PUSH _Alias\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+       PUSH OFFSET L_lit+181\r
+       PUSH _AliasPhy\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+       PUSH OFFSET L_lit+214\r
+       MOV EDI, 0\r
+       CALL _printf\r
+       ADD ESP,4\r
+       LEA EAX,DWORD PTR [EBP-8]\r
+       PUSH EAX\r
+       PUSH 1\r
+       CALL FWORD PTR _ReadKbd\r
+       PUSH _Alias\r
+       PUSH 8000\r
+       PUSH 3\r
+       CALL FWORD PTR _DeAliasMem\r
+       MOV DWORD PTR [EBP-4], EAX\r
+       MOV EAX,DWORD PTR [EBP-4]\r
+       AND EAX,EAX\r
+       JZ L_4\r
+       PUSH OFFSET L_lit+243\r
+       PUSH DWORD PTR [EBP-4]\r
+       MOV EDI, 4\r
+       CALL _printf\r
+       ADD ESP,8\r
+L_4:\r
+       XOR EAX,EAX\r
+       PUSH EAX\r
+       CALL _exit\r
+       MOV ESP,EBP\r
+       POP EBP\r
+       RETN 8\r