This commit is contained in:
Kartik K. Agaram 2021-08-22 20:23:21 -07:00
parent 52e3ea8a4b
commit b41aed4a9a
2 changed files with 12 additions and 16 deletions

View File

@ -1,16 +1,14 @@
# Assign addresses (co-ordinates) to instructions (landmarks) in a program
# (landscape).
# Read a list of addresses and labels from a file called 'labels',
# then replace labels in stdin with their addresses.
# Read a list of labels and their addresses from a file called 'labels', then
# replace labels in stdin with their addresses.
#
# To build:
# $ bootstrap/bootstrap translate [01]*.subx subx-params.subx labels_baremetal.subx -o labels_baremetal
#
# Stdin should be a stream of bytes and some interspersed labels. Comments and
# '==' segment headers are allowed, but names are ignored. The emitted code
# will all lie in a single contiguous address range starting at address 0x7c00.
# Addresses in segment headers are optional. If provided, this program will
# insert padding in the output until the desired address is reached.
# '==' segment headers are allowed, but segment names are ignored. The emitted
# code will all lie in a single contiguous address range starting at address
# 0x7c00. Addresses in segment headers are optional. If provided, this program
# will insert padding in the output until the desired address is reached.
#
# $ cat x
# == code
@ -26,7 +24,7 @@
# The output is the stream of bytes without segment headers or label definitions,
# and with label references replaced with numeric values/displacements.
#
# $ cat x |bootstrap/bootstrap run survey_baremetal labels
# $ cat x |bootstrap/bootstrap run labels_baremetal labels
# # 0x7c00
# aa bb nn # some computed address
# cc dd nn nn nn nn # some computed displacement

View File

@ -1,15 +1,13 @@
# Assign addresses (co-ordinates) to instructions (landmarks) in a program
# (landscape).
# Assign addresses (co-ordinates) to labels (landmarks) in a program
# (landscape) on stdin.
#
# To build:
# $ bootstrap/bootstrap translate [01]*.subx subx-params.subx survey_baremetal.subx -o survey_baremetal
#
# The expected input is a stream of bytes and some interspersed labels.
# Comments and '==' segment headers are allowed, but names are ignored. The
# emitted code will all lie in a single contiguous address range starting at
# address 0x7c00. Addresses in segment headers are optional. If provided, this
# program will insert padding in the output until the desired address is
# reached.
# Comments and '==' segment headers are allowed, but segment names are ignored.
# Mappings between labels and addresses are emitted to stdout, assuming the
# program starts at address 0x7c00. Addresses in segment headers are optional.
#
# $ cat x
# == code