blob: 40d0f4ad702b76f8c0909739bc6fcc7d696d65c3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# Compiler flags:
# -q no banner
# -wx max warnings
# -0 generate 8086 code
# -ms force small model (default)
# -s remove runtime stack checks (required)
# -os optimize for size
# -zu assume that SS != DS (required)
# -ecc default to __cdecl calling convention (bad idea)
#
!ifdef __UNIX__
Q=\"
!else
Q="
!endif
CPU = 386
CFLAGS = -q -0 -wx -zu -s -oas -d1+ -ms
CFLAGS32 = -q -wx -zu -s -oas -d1+ -ms -nt=BIOS32 -nd=BIOS32
# -oat seems to prevent ENTER/LEAVE generation
#CFLAGS32 = -q -wx -zu -s -oat -d1+ -ms -nt=BIOS32 -nd=BIOS32
DEFS = -DVBOX -DVBOX_LANBOOT_SEG=0xE200 -DVBOX_VERSION_STRING=$(Q)0.9$(Q) &
-DVBOX_WITH_SCSI -DVBOX_BIOS_CPU=80386
AFLAGS = -q -0 -wx
INCLS = -I$(Q)../../../../../include$(Q) -I$(Q) ../../BiosCommonCode$(Q)
OBJS = bios.obj post.obj ata.obj floppy.obj floppyt.obj eltorito.obj &
boot.obj keyboard.obj disk.obj serial.obj system.obj invop.obj &
timepci.obj logo.obj ps2mouse.obj parallel.obj scsi.obj &
apm.obj apm_pm.obj pcibios.obj pciutil.obj vds.obj &
print.obj pcibio32.obj pci32.obj orgs.obj
!if $(CPU) > 286
OBJS += ahci.obj
DEFS += -DVBOX_WITH_AHCI
!endif
.c.obj : .autodepend
wcc -fo=.obj $(CFLAGS) $(DEFS) $(INCLS) $<
.asm.obj : .autodepend
wasm -fo=.obj $(AFLAGS) $(DEFS) $(INCLS) $<
vbxbios.rom : vbxbios.bin
biossums $< $@
vbxbios.bin : $(OBJS) $(__MAKEFILES__)
wlink name $@ system dos debug all option quiet &
option nofarcalls, map, verbose, statics, symfile &
output raw offset=0xF0000 order &
clname DATA segaddr=0xF000 segment _DATA &
clname CODE &
segment _TEXT segaddr=0xF000 offset=0x1C00 &
segment BIOS32 segaddr=0xF000 offset=0xDB00 &
segment BIOSSEG segaddr=0xF000 offset=0xE000 &
file { $(OBJS) } &
library clibs.lib &
disable 1014, 1023, 2120
logo.obj : logo.c .autodepend
wcc -fo=.obj $(INCLS) $(CFLAGS) $(DEFS) -DVBOX_PC_BIOS $<
pci32.obj : pci32.c .autodepend
wcc386 -fo=.obj $(INCLS) $(DEFS) $(CFLAGS32) $<
clean : .symbolic
@rm -f *.obj *.err
@rm -f vbxbios.bin vbxbios.rom vbxbios.map vbxbios.sym
|