📄 autostrt.cmd
字号:
-- flat.bld
-- Build file for input to BLD386 to create flat model example
--
-- ***********************************************************************
--
-- Version 2.0
-- Copyright Intel Corp., 1988
-- This template is intended for your benefit in developing applications/
-- systems using Intel386(TM) family microprocessors. Intel hereby
-- grants you permission to modify and incorporate it as needed.
--
-- MRI: 10/15/93 The original template was customized to fit our
-- needs. But some extraneous parts were left in place to aid
-- in future mods. These have been commented out. jjefferies
--
-- ***********************************************************************
--
sysonly;
SEGMENT
*SEGMENTS (DPL = 0), -- Give all user segments a DPL of 0.
_PHANTOM_CODE_ (DPL = 0,READABLE), -- These two segments are created by
_PHANTOM_DATA_ (DPL = 0), -- the builder when the FLAT control is used.
-- Their default DPL is 0; they are
-- listed here for reference only.
_START(USE32), CODE(USE32); -- VRTXsa definitions
TABLE
-- create GDT
GDT -- GDT_DESC is a public symbol in
-- the "flatstart" initialization module.
(LOCATION = gdt_desc -- In the buffer starting at GDT_DESC,
-- BLD386 places the GDT base and
-- GDT limit values. Buffer must be
-- 6 bytes long. The base and limit
-- values are places in this buffer
-- as two bytes of limit plus
-- four bytes of base in the format
-- required for use by LGDT instruction.
-- , BASE = 01000H
); -- end GDT
TASK -- Task is for ICE(TM)-386 or
main_task -- ICE(TM)-376 emulator initialization.
( -- BASE = 020000h,
-- DATA = DATA, -- a misnomer alterable DATA is actually
-- in MO_WSP which is set in boardset.inc
CODE = start, -- Entry point is main, which
-- must be a public id.
-- STACKS = (stack), -- Originally to have bldr setup stack seg.
-- in XDM386 the stack is a part of MO_WSP
NO INTENABLED -- Disable interrupts.
)
-- SYS_TSS(CODE = crt0_cold_start, DPL = 0)
;
GATE
d_int (INTERRUPT, DPL = 0, ENTRY = int_def);
TABLE
-- create IDT
IDT -- IDT_DESC is a public symbol in the
(LOCATION = idt_desc, -- "flatstart" initialization module.
-- In the buffer starting at IDT_DESC
-- the builder places two bytes of the IDT
-- limit and four bytes of the IDT base
-- values in the format required for use
-- by LIDT instruction.
-- BASE = 01070H,
-- Slots 0 through 31 are Intel-reserved
ENTRY = (0:d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,d_int,
d_int,d_int,d_int,d_int,d_int,d_int)
); -- end IDT
TABLE ldt1 (NOT CREATED); -- Builder does not place LDT in object
-- module, but contents appear in listing.
-- TABLE IDT (NOT CREATED);
MEMORY
(RESERVE = (0..02800H,0A0000H .. 0FFFFFH),
RANGE = (xdm_mem = RAM (2802H .. 07FFFH),
sys_mem = RAM (08210H .. 09FFFFH, 100000H .. 3FFFFFFH)),
ALLOCATE = (xdm_mem = (*TABLES, *TASKS, monbase.DATA, monbase.ROM, monbase.CODE32),
sys_mem = (
crt0.DATA_dseg,
crt0.CODE_cseg,
crt0._START,
crt0._TEXT,
crt0.DATA,
crt0.CONST,
crt0._BSS,
crt0.CONST1,
crt0._DATA,
crt0.CODE
))
);
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -