News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Not allowed to make OS with MASM OR MASM32 ???

Started by janequorzar, September 11, 2010, 03:19:18 PM

Previous topic - Next topic

hutch--

janequorzar,

With JWASM, what you see is what you get, you have a fully buildable source so there are no secrets or limitations with it but the author has made it clear over time that he will not provide support for JWASM nor will he provide documentation for it and you have to rely on Microsoft documentation to use it.

I build JWASM with a batch file using Microsoft VC 2003 (VCTOOLKIT) and it works correctly so while you are short on documentation for JWASM, at least you know what is in it as far as source code, its an interesting choice, pick what suits you.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

frktons

Quote from: janequorzar on September 13, 2010, 12:19:02 PM
Quote from: frktons on September 13, 2010, 12:16:06 PM
JWASM = written in C/Open source/MASM compatible/updated regularly/not many docs should not be a problem for you as well.  :U
I'm waiting for the 64bit windows.inc to start experimenting with it. As an Assembly n00bbyst I'd like to have more tuts and docs, but
you can't have everything all together.

lol  not many docs.. well there was the selling point.. my students don't need info on how to use it..  naaaa..  lmao

Actually, I have been wondering about that too. I have found some OSes that are full 64 Bit only OSes and they work too. But nothing on being compatible with Windows. ( speaking only of 64-Bit of course. )

The good thing with JWASM is that you can write 16 bit code for the BIOS, 32 bit code for
windows, and 64 bit code as well, with some know how of the calling conventions for 64bit
windows. The coming soon windows.inc for 64 bit will complete the job.  :U
Mind is like a parachute. You know what to do in order to use it :-)

frktons

Don't miss GOASM, look at the subforum in this forum, there are many fans around here.  :U
Mind is like a parachute. You know what to do in order to use it :-)

jj2007


japheth

Quote from: janequorzar on September 13, 2010, 11:22:05 AM
Wow, why the hostility ?

That wasn't hostile. Or, if it was, then it was my usual level of hostility.

Quote
  and yes I did mention why I cannot use nasm. Its in an earlier posting in this thread, its because I wanted to find a compiler that can use the more recent MASM syntax. NASM does not support MASM and it says in their NASM documents they do not plan on it, and since FASM can use the syntax and it wont stop you from creating anything you want, it was the choice of all the compilers to use.

This is a misconception, at least if I understand you correctly. FASM does not support Masm syntax, its syntax is relatively similar to NASM's - but has superior Macro capabilities.

frktons

Quote from: japheth on September 13, 2010, 12:48:38 PM
Quote from: janequorzar on September 13, 2010, 11:22:05 AM
Wow, why the hostility ?

That wasn't hostile. Or, if it was, then it was my usual level of hostility.

Quote
  and yes I did mention why I cannot use nasm. Its in an earlier posting in this thread, its because I wanted to find a compiler that can use the more recent MASM syntax. NASM does not support MASM and it says in their NASM documents they do not plan on it, and since FASM can use the syntax and it wont stop you from creating anything you want, it was the choice of all the compilers to use.



This is a misconception, at least if I understand you correctly. FASM does not support Masm syntax, its syntax is relatively similar to NASM's.

Better to add that japheth is JWASM developer, in case you have some direct question to ask.  :P
Mind is like a parachute. You know what to do in order to use it :-)

jj2007

Quote from: janequorzar on September 13, 2010, 02:14:08 PMIs there a set of INC files in assembly that has nothing to do with being REQUIRED to have MS libraries ?

In otherwords for OS creation and still using the MASM syntax.

Try this:
.486
.model flat, stdcall
option casemap :none

.code
start: mov eax, 12345678h
ret

end start


Assembler without the OS. You can still look at it through Olly's eyes

frktons

Quote from: janequorzar on September 14, 2010, 01:13:46 PM
Now that is impressive stuff. I even registered with the guy because it makes my job a LOT easier now. I cannot believe in all my years of assembly programming that I never came across this before. Thank you for the heads up.  :U

:lol  this is the ultimate stand for Assembly programmers, here they joined
to stay, no matter what.  :lol
Mind is like a parachute. You know what to do in order to use it :-)

hutch--

janequorzar,

this much, if you are going to work on an OS you won't be worried about system include files, you will be writing your own. Without DOS, BIOS or Win32 functions you will be writing your own with whatever library support you can find that don't assume an OS behind them.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

ridgerunner

Quote from: hutch-- on September 12, 2010, 03:24:59 AM
There is an element of myth in the question, no-one writes an OS in assembler as of the last 20 years or so...

Well, not quite true... I did. Or should I say, my former employer - Eyring corporation did. (I was the lead engineer and wrote the kernel core.) Although it did not compete with MS and was never a commercial success (the company folded in late 2001). It was called "EYRX" and was written in 100% assembly language using MASM. It was designed to be a super-lean, yet very powerful embeddable real-time operating system that would take advantage of the i386/PC-AT architecture. Among other things, it featured an advanced timing sub-system that allowed very precise task scheduling in the absolute time domain.

If anyone is interested in checking it out, I just repackaged the latest (and last) demo disk release - (the demo was provided as a bootable floppy). You can download it here: EYRX_DEMO_20010308.zip (2.5MB). The zip file contains a bootable CD ISO image. I've also posted a copy of its documentation here so you can check it out first: Eyrx Demo Disk Documentation. Here is the checksum of the download file :

EYRX_DEMO_20010308.zip - SHA1=BFAED9C6AF9407DDA97FE5E413CF7BF016958147

Eyrx was something only a hard core ASM programmer could truly appreciate. I wish I had known about you guys back then before we went out of business. Maybe we could have generated more interest.

Cheers,
Jeff Roberson

hutch--

Hi Jeff,

Good to hear from you. Sounds like it was an interesting toy. Interestingly enough it is now possible for someone to package a complete OS development kit using JWASM as it can easily handle about 99.999^% of MASM code including most MASM macros but it has a cute capacity that is useful for OS dev people with its BIN output option. I have been playing with it to build single algos with no externals and writing the results as a BIN file as this is very useful if you wish to embed a working block of binary in another application.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

Antariy

Quote from: ridgerunner on October 02, 2010, 05:51:46 PM
If anyone is interested in checking it out, I just repackaged the latest (and last) demo disk release - (the demo was provided as a bootable floppy). You can download it here: EYRX_DEMO_20010308.zip (2.5MB). The zip file contains a bootable CD ISO image. I've also posted a copy of its documentation here so you can check it out first: Eyrx Demo Disk Documentation. Here is the checksum of the download file :

EYRX_DEMO_20010308.zip - SHA1=BFAED9C6AF9407DDA97FE5E413CF7BF016958147

Hi!

I tried to load OS in VM, by ISO image and by floppy image, but loading is stopped at "synchronizing clock...".
I saw, what in distribution is not included core.dll also.
This OS is not compatible with VMs, in particular - with VPC2007?



Alex

ridgerunner

Its best to boot the Eyrx demo from a real floppy (or real CD), on a real computer (preferably an old box you have lying around). From my (very limited) experience, VMs don't always provide perfect hardware emulation and Eyrx employs native 32-bit protected-mode drivers which talk directly to the hardware (completely bypassing the BIOS and never droping down into real-mode). And Eyrx uses some non-standard hardware chip configurations which not all VMs emulate correctly. e.g. The PIC interrupt controller chip has an "automatic-EOI" mode, which worked great on many real boxes (and shaved some "critical code" time off ISRs), but this mode did not work in VMware (late 90's version), so we had to ditch using that mode. I'm not sure about VPC2007 (never used it), but I've been able to get Eyrx to run successfully under a VirtualBox VM, but note that it does not recognize the floppy or HD controllers in the VM environment. Not sure about the recent versions of VMware either.

ridgerunner

p.s. Sorry about hijacking this thread. I was going to start a new thread, but was unsure which forum this would fall under. ???

Antariy

Quote from: ridgerunner on October 04, 2010, 02:42:46 AM
Its best to boot the Eyrx demo from a real floppy (or real CD), on a real computer (preferably an old box you have lying around).

Thank you for reply!



Alex