VirtualBox

source: vbox/trunk/src/VBox/ValidationKit/bootsectors/bootsector2-cpu-instr-1.asm@ 93115

Last change on this file since 93115 was 93115, checked in by vboxsync, 3 years ago

scm --update-copyright-year

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.8 KB
Line 
1; $Id: bootsector2-cpu-instr-1.asm 93115 2022-01-01 11:31:46Z vboxsync $
2;; @file
3; Bootsector test for misc instructions.
4;
5; Recommended (but not necessary):
6; VBoxManage setextradata bs-cpu-instr-1 VBoxInternal/Devices/VMMDev/0/Config/TestingEnabled 1
7;
8
9;
10; Copyright (C) 2007-2022 Oracle Corporation
11;
12; This file is part of VirtualBox Open Source Edition (OSE), as
13; available from http://www.virtualbox.org. This file is free software;
14; you can redistribute it and/or modify it under the terms of the GNU
15; General Public License (GPL) as published by the Free Software
16; Foundation, in version 2 as it comes in the "COPYING" file of the
17; VirtualBox OSE distribution. VirtualBox OSE is distributed in the
18; hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
19;
20; The contents of this file may alternatively be used under the terms
21; of the Common Development and Distribution License Version 1.0
22; (CDDL) only, as it comes in the "COPYING.CDDL" file of the
23; VirtualBox OSE distribution, in which case the provisions of the
24; CDDL are applicable instead of those of the GPL.
25;
26; You may elect to license modified versions of this file under the
27; terms and conditions of either the GPL or the CDDL or both.
28;
29
30
31;*******************************************************************************
32;* Header Files *
33;*******************************************************************************
34%include "iprt/asmdefs.mac"
35%include "iprt/x86.mac"
36%include "VBox/VMMDevTesting.mac"
37
38; Include and execute the init code.
39%define BS2_INIT_RM
40%define BS2_WITH_TRAPS
41%define BS2_INC_RM
42%define BS2_INC_PE32
43%define BS2_INC_PP32
44%define BS2_INC_PAE32
45%define BS2_INC_LM32
46%define BS2_INC_LM64
47%define BS2_WITH_TRAPRECS
48%include "bootsector2-common-init-code.mac"
49
50
51;
52; The main() function.
53;
54BEGINPROC main
55 BITS 16
56 ;
57 ; Test prologue.
58 ;
59 mov ax, .s_szTstName
60 call TestInit_r86
61 call Bs2EnableA20_r86
62
63
64 ;
65 ; Execute the tests
66 ;
67%if 1
68 call NAME(DoTestsForMode_rm_pe32)
69%endif
70%if 1
71 call NAME(DoTestsForMode_rm_pp32)
72%endif
73%if 1
74 call NAME(DoTestsForMode_rm_pae32)
75%endif
76%if 1
77 call NAME(DoTestsForMode_rm_lm64)
78%endif
79
80 ;
81 ; We're done.
82 ;
83 call TestTerm_r86
84 ret
85
86.s_szTstName:
87 db 'tstCpuInstr1', 0
88ENDPROC main
89
90
91;
92; Instantiate the template code.
93;
94%include "bootsector2-template-footer.mac" ; reset the initial environemnt.
95
96%define TMPL_PE32
97%include "bootsector2-cpu-instr-1-template.mac"
98%define TMPL_PP32
99%include "bootsector2-cpu-instr-1-template.mac"
100%define TMPL_PAE32
101%include "bootsector2-cpu-instr-1-template.mac"
102%define TMPL_LM64
103%include "bootsector2-cpu-instr-1-template.mac"
104
105
106;
107; End sections and image.
108;
109%include "bootsector2-common-end.mac"
110
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette