Hi Hervé,

No disrespect for your work, but I'm inclined to concur with Timo regrading AT&T vs. Intel.

Even though I usually preach "don't fix it if it isn't broken', I really think that AT&T syntax
is broken by design, and we should use only Intel assembly, which is *much* clearer.
After all, we're programming Intel CPU's, not AT&T telephone switchboards ;)

1) AT&T does not conform with Intel instruction reference.
   Intel syntax conforms with the instruction reference.

2) AT&T has a lot of quaint obscure directive voodoo.
   What little directives exist in Intel is clear and concise.

Eventually, I hope we'll get rid of all backwards & muddy AT&T assembly,
but until then I think we should at least not use it for new code.

Best Regards
L.


---------- Forwarded message ----------
From: "Hervé Poussineau" <hpoussin@reactos.org>
To: ReactOS Development List <ros-dev@reactos.org>
Date: Mon, 02 May 2011 19:33:19 +0200
Subject: Re: [ros-dev] [ros-diffs] [hpoussin] 51517: [freeldr] Add PXE "filesystem"
Hi,

The file is in AT&T syntax, as all asm files in reactos/boot/freeldr/freeldr/arch/i386/ , except fathelp.asm
Sorry, I won't "fix" it, so you'll have to find someone to do it.

Regards,

Hervé

Timo Kreuzer a écrit :

Why did you write the asm code in AT&T syntax? Its both ugly and breaks compilation with MSVC.
I've spent quite some time converting all asm code to MSVC friendly intel syntax.
Could you please fix that?

Regards,
Timo

Am 01.05.2011 10:11, schrieb hpoussin@svn.reactos.org:
Author: hpoussin
Date: Sun May  1 08:11:43 2011
New Revision: 51517

URL: http://svn.reactos.org/svn/reactos?rev=51517&view=rev
Log:
[freeldr] Add PXE "filesystem"

Added:
    trunk/reactos/boot/freeldr/freeldr/arch/i386/i386pxe.S   (with props)
    trunk/reactos/boot/freeldr/freeldr/fs/pxe.c   (with props)
    trunk/reactos/boot/freeldr/freeldr/include/arch/i386/pxe.h   (with props)
    trunk/reactos/boot/freeldr/freeldr/include/fs/pxe.h   (with props)
Modified:
    trunk/reactos/boot/freeldr/freeldr/arch/i386/machpc.c
    trunk/reactos/boot/freeldr/freeldr/arch/i386/pcdisk.c
    trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild
    trunk/reactos/boot/freeldr/freeldr/freeldr_base64k.rbuild
    trunk/reactos/boot/freeldr/freeldr/fs/fs.c
    trunk/reactos/boot/freeldr/freeldr/include/arch/i386/hardware.h
    trunk/reactos/boot/freeldr/freeldr/include/arch/i386/machpc.h
    trunk/reactos/boot/freeldr/freeldr/include/freeldr.h

Added: trunk/reactos/boot/freeldr/freeldr/arch/i386/i386pxe.S
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/arch/i386/i386pxe.S?rev=51517&view=auto
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/arch/i386/i386pxe.S (added)
+++ trunk/reactos/boot/freeldr/freeldr/arch/i386/i386pxe.S [iso-8859-1] Sun May  1 08:11:43 2011
@@ -1,0 +1,97 @@
+/*
+ *  FreeLoader
+ *  Copyright (C) 2011  Hervé Poussineau
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License along
+ *  with this program; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+    .text
+    .code16
+
+#define ASM
+
+#include<arch.h>
+
+/*
+ * U16 PxeCallApi(U16 Segment, U16 Offset, U16 Service, VOID *Parameter);
+ *
+ * RETURNS:
+ */
+_pxe_function:
+    .word    0
+_pxe_entry_point:
+    .long    0
+_pxe_buffer_segment:
+    .word0
+_pxe_buffer_offset:
+    .word0
+_pxe_result:
+    .word    0
+
+EXTERN(_PxeCallApi)
+    .code32
+    pushl    %ebp
+    movl    %esp,%ebp
+
+