flat assembler
Message board for the users of flat assembler.

Index > Main > A 2GB FLAT BINARY?

Author
Thread Post new topic Reply to topic
Patrick



Joined: 08 Sep 2017
Posts: 3
Patrick 09 Sep 2017, 05:38
Well? Beyond 32,812 .COMs...

Edit: May the / an admin / mod move my post to Main? My question is not DOS-specific. Thank you.
Post 09 Sep 2017, 05:38
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20447
Location: In your JS exploiting you and your system
revolution 09 Sep 2017, 07:31
What are you asking? Can a file be 2GB in size? Can fasm create a 2GB file? Can <OS> load a 2GB file? Someone gave you a 2GB file and you want to know what it is? Something else?
Post 09 Sep 2017, 07:31
View user's profile Send private message Visit poster's website Reply with quote
Patrick



Joined: 08 Sep 2017
Posts: 3
Patrick 09 Sep 2017, 07:35
I want to run a 2GB flat binary from boot. I read that .COM has a 64KB limit. I need 2GB of memory total for my game.

I mean, my original plan was to have a 2GB .COM with all code and data.

I am trying to avoid using any headers or anything Microsoft-specific. No headers, libraries, object files, or linkers.

Game loop / logic / net-code = ASM, and somehow implementing bit arrays for assets. (Taken from 32-bit bitmaps).

It will be running at 1920*1080.

My goal is to program as low-level as possible, so that I can make a networked game that runs independent of any OS.

I'm aware I have to implement drivers, which I am A-OK with. Better than being held hostage by microsoft if and when they decide to implement a tax for using their OS =P.


Last edited by Patrick on 09 Sep 2017, 07:43; edited 1 time in total
Post 09 Sep 2017, 07:35
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20447
Location: In your JS exploiting you and your system
revolution 09 Sep 2017, 07:39
That depends upon your bootloader and your file system. If you use FAT32 (or other FS that allows large files) and a custom bootloader that maps 2GB contiguous RAM then yes you can.
Post 09 Sep 2017, 07:39
View user's profile Send private message Visit poster's website Reply with quote
Patrick



Joined: 08 Sep 2017
Posts: 3
Patrick 09 Sep 2017, 07:46
Is it necessary to use a filesystem at all?

Oh you mean the boot device.

Well, realistically, anyone running this from boot will be using a USB key.

Anyone else would be using a mounted virtual USB key in a VM.
Post 09 Sep 2017, 07:46
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20447
Location: In your JS exploiting you and your system
revolution 09 Sep 2017, 08:00
If you decide to go completely low level then you don't need a FS. Just make a custom bootloader and hardcode the location of the 2GB data into it at compile time.
Post 09 Sep 2017, 08:00
View user's profile Send private message Visit poster's website Reply with quote
Furs



Joined: 04 Mar 2016
Posts: 2564
Furs 09 Sep 2017, 15:00
Patrick wrote:
I'm aware I have to implement drivers, which I am A-OK with. Better than being held hostage by microsoft if and when they decide to implement a tax for using their OS =P.
Just use Linux then? (just the kernel, no userland)

Of course, unless you want to do it for fun then sure, but drivers will be a major pain. Even drivers working just for your specific hardware will be painful... and that's just getting started.
Post 09 Sep 2017, 15:00
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.