One last question... I am trying to build large un-initalized section and it takes a long time to comply the regular way...

Is it possible and if so how can i make a object file out of it.

THAN use it and link it to my asm projects as needed.....This way it may not take so LONG comply ...

if true....HOW....

This is for testing... I don't know what should be here or not or what it is missing. it make data.exe and data.obj

... or is it OK how to use it as an .obj file and link it...

All i want to get out of it is the five large buffers into a file called data.obj that i can link up...

I tried to link DATA,OBJ to Showbmp.asm in masm32 Example2 and get:

(1) error A2044 invalid character in file
(2) error A2044 invalid character in file

or is there another way it can be done... with a lot of bytes it take forever to comply...

I am back to the buffer thing again...

Thanks





; #########################################################################

.386
.model flat, stdcall ; 32 bit memory model
option casemap :none ; case sensitive

; #########################################################################

; include files
; ~~~~~~~~~~~~~
; include \MASM32\INCLUDE\windows.inc
; include \MASM32\INCLUDE\masm32.inc
; include \MASM32\INCLUDE\gdi32.inc
; include \MASM32\INCLUDE\user32.inc

; include \MASM32\INCLUDE\kernel32.inc

; libraries
; ~~~~~~~~~
; includelib \MASM32\LIB\masm32.lib

; includelib \MASM32\LIB\gdi32.lib
; includelib \MASM32\LIB\user32.lib


; includelib \MASM32\LIB\kernel32.lib

; #########################################################################

Also this make a bad data.exe but there are no INCLUDE included...

;=================
; Local prototypes
;=================

;=============
; Local macros
;=============

.data?

buf1 byte 100000 dup (?)
buf2 byte 100000 dup (?)
buf3 byte 100000 dup (?)
buf4 byte 100000 dup (?)
buf5 byte 100000 dup (?)

; ########################### Inserted modules ############################


; #########################################################################


.code

start:




end start
Posted on 2002-11-01 01:51:54 by cmax
It's your data.asm:
.386

.model flat, stdcall
option casemap:none

EXTERNDEF start:NEAR
PUBLIC buf1
PUBLIC buf2
PUBLIC buf3
PUBLIC buf4
PUBLIC buf5

.data?
buf1 byte 100000 dup (?)
buf2 byte 100000 dup (?)
buf3 byte 100000 dup (?)
buf4 byte 100000 dup (?)
buf5 byte 100000 dup (?)

.code
end start

And you compile it with data.bat:
@echo off

\masm32\bin\ml /nologo /c /coff data.asm
pause
exit

This is your main.asm:
.386

.model flat, stdcall
option casemap:none

EXTERNDEF buf1:ptr byte
EXTERNDEF buf2:ptr byte
EXTERNDEF buf3:ptr byte
EXTERNDEF buf4:ptr byte
EXTERNDEF buf5:ptr byte

.code

start:
mov eax, offset buf1
mov eax, offset buf2
mov eax, offset buf3
mov eax, offset buf4
mov eax, offset buf5
end start

And you compile it with main.bat:
@echo off

\masm32\bin\ml /nologo /c /coff main.asm
\masm32\bin\link /nologo /SUBSYSTEM:WINDOWS main.obj data.obj
pause
exit

or is there another way it can be done... with a lot of bytes it take forever to comply...

VirtualAlloc/VirtualAllocEx, Heap stuff, Memory Mapped Files etc...
Posted on 2002-11-01 03:23:50 by Four-F
Four-F

Thank you very, very much.

Sincerly
Posted on 2002-11-01 03:35:45 by cmax