Update of /cvsroot/wisp/wisp/users/dig
In directory sc8-pr-cvs1:/tmp/cvs-serv7299
Modified Files:
pe.py pe.tran
Log Message:
implemented |make-pe-header|
Index: pe.py
===================================================================
RCS file: /cvsroot/wisp/wisp/users/dig/pe.py,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- pe.py 19 May 2003 13:37:48 -0000 1.28
+++ pe.py 19 May 2003 13:54:50 -0000 1.29
@@ -76,13 +76,9 @@
e.glue(0, make_pe_mz_stub('OS too broken'), 0x100)
if e.memsz() < 0x80:
e.align(0x80) # attempt to create a file(1)-friendly exe
- e.align(8) # PE header must be aligned to 8
- e.place_symbol('!pe')
- e.emit_string('PE\0\0')
- interpret_single('make-coff-header', e, include = 'coff')
do = Interpreter(e).do
do('needs pe')
- do('make-pe-aout-header')
+ do('make-pe-header')
text = text.copy() # so we won't add import stubs to the original linkie
imports = Linkie('<')
sectnames = ['.text', '.data', '.bss', '.imports']
Index: pe.tran
===================================================================
RCS file: /cvsroot/wisp/wisp/users/dig/pe.tran,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- pe.tran 19 May 2003 13:41:32 -0000 1.10
+++ pe.tran 19 May 2003 13:54:51 -0000 1.11
@@ -7,6 +7,7 @@
\\\\ @(#) $Id$
needs mz
+needs coff
\ The result's assumed origin address is 0x100.
:[ ] make-pe-mz-stub-structure \ ( -- ) no message itself
@@ -113,6 +114,14 @@
'&COM+-runtime-header '#rva + t,
'#COM+-runtime-header/size t,
0 t, 0 t,
+;
+
+:[ ] make-pe-header
+ 8 align \ PE header must be aligned to 8
+ label !pe
+ "PE" times b, 0 w, \ magic
+ make-coff-header
+ make-pe-aout-header
;
\ vim: ft=tran
|