Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Jun 2015 03:44:42 -0700
From:      Mehmet Erol Sanliturk <m.e.sanliturk@gmail.com>
To:        mayuresh@kathe.in
Cc:        Matthew Pherigo <hybrid120@gmail.com>,  FreeBSD Questions Mailing List <freebsd-questions@freebsd.org>
Subject:   Re: randall hyde's high level assembly!
Message-ID:  <CAOgwaMvP17LjkJ_Lysr_5PF16ursA75EsG2U6m3a3Q1BC2hPTw@mail.gmail.com>
In-Reply-To: <b2656e74e31fb7f1d26505151290561b@kathe.in>
References:  <731c3f79950e679799b5f8078a5ba7f0@kathe.in> <917AE52A-45E0-42CB-A6A8-40BAAE318CC9@gmail.com> <1c5f3e6e3cafb9022d257afcce1757b3@kathe.in> <CAOgwaMueNKBryDU0WQHQnp1DyUq5Mo-hqr4DWETz-gL1-uaz3w@mail.gmail.com> <6ee4e8712a7499dd3d703e540f46059b@kathe.in> <CAOgwaMv9wJ08i=vWfut2COv33=gJWH6qWUK=oHc5G0%2Bqj2=vgw@mail.gmail.com> <23f251dd1a66d0a88ed041ae2593cb98@kathe.in> <CAOgwaMs1_aEBKStNhP2MGQdPpOgA8eqg6EqFRPcX_uU11nuQQw@mail.gmail.com> <6228039c427b13187bfdf347b1771b10@kathe.in> <CAOgwaMuJvdhrrRbM377KBEqW0JGjW62EW6XCoSndrA5aqVjkTw@mail.gmail.com> <b2656e74e31fb7f1d26505151290561b@kathe.in>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jun 12, 2015 at 3:27 AM, Mayuresh Kathe <mayuresh@kathe.in> wrote:

> On 2015-06-12 15:44, Mehmet Erol Sanliturk wrote:
>
>> On Fri, Jun 12, 2015 at 3:02 AM, Mayuresh Kathe <mayuresh@kathe.in>
>> wrote:
>>
>>  On 2015-06-12 15:11, Mehmet Erol Sanliturk wrote:
>>> On Thu, Jun 11, 2015 at 11:37 PM, Mayuresh Kathe
>>> <mayuresh@kathe.in>
>>> wrote:
>>>
>>> On 2015-06-12 11:24, Mehmet Erol Sanliturk wrote:
>>> On Thu, Jun 11, 2015 at 10:45 PM, Mayuresh Kathe
>>> <mayuresh@kathe.in>
>>> wrote:
>>>
>>> On 2015-06-12 11:04, Mehmet Erol Sanliturk wrote:
>>> On Thu, Jun 11, 2015 at 9:29 PM, Mayuresh Kathe <mayuresh@kathe.in>
>>> wrote:
>>>
>>> hi matthew,
>>>
>>> no luck, I got the following message;
>>> root@www:~ # pkg install hla
>>> Updating FreeBSD repository catalogue...
>>> FreeBSD repository is up-to-date.
>>> All repositories are up-to-date.
>>> pkg: No packages available to install matching 'hla' have been
>>> found in the repositories
>>>
>>> `uname -a` gives me the following;
>>> FreeBSD www.kathe.in [1] [1] [1] [1] 10.1-RELEASE-p10 FreeBSD
>>> 10.1-RELEASE-p10
>>> #0: Wed May 13 06:54:13 UTC 2015
>>> root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC
>>> amd64
>>>
>>> `freebsd-version` gives me the following;
>>> 10.1-RELEASE-p11
>>>
>>> anything i might be doing wrong?
>>>
>>> ~mayuresh
>>>
>>> On 2015-06-12 09:26, Matthew Pherigo wrote:
>>> Hey Mayuresh,
>>>
>>> There's actually a port in the tree already! 'pkg install hla'
>>>
>>> --Matt
>>>
>>> On Jun 11, 2015, at 5:52 AM, Mayuresh Kathe <mayuresh@kathe.in>
>>> wrote:
>>>
>>> has anyone been successful at working with randall hyde's high
>>> level assembly toolkit under freebsd 10.x?
>>> http://www.plantation-productions.com/Webster/ [2] [2] [2] [2]
>>> claims
>>> to
>>> have a
>>> pre-built archive, but one that fails to assemble the binaries. :(
>>>
>>> ~mayuresh
>>>
>>> _______________________________________________
>>>
>>> Is hla able to generate 64-bit machine code for amd64 ?
>>>
>>> It seems that it is for 32-bits , i.e. i386 .
>>>
>>> i have been able to run and test 'hla' under amd64 systems running
>>> ubuntu.
>>> any particular reason why it will not run under freebsd 64-bit?
>>> one of the things that could be a problem might be the "assembler"
>>> itself, i couldn't find "gas" or an equivalent under freebsd.
>>>
>>> ~mayuresh
>>>
>>> Can you use Nasm ?
>>>
>>> CD /USR/PORTS/DEVEL/NASM
>>> MAKE INSTALL
>>>
>>> http://forum.nasm.us/index.php?topic=3D1283.0 [3] [3] [3]
>>>
>>> thanks for that tip mehmet, much appreciate it.
>>>
>>> i hadn't known about "nasm", looking it up led me to a book on
>>> assembly language programming by jeff duntemann, which seems to be
>>> a
>>> lot more realistic than the one by randall hyde.
>>>
>>> again, thanks a million mehmet. :)
>>>
>>> ~mayuresh
>>>
>>> 64 bits operating systems are different from 32 bits operating
>>> systems
>>> .
>>>
>>> During working with assemblers , it is necessary to distinguish
>>> this
>>> feature .
>>>
>>> In a 64 bits operating system , if 32 bits programs will be used ,
>>> it
>>> is necessary to have 32 bits libraries and support by the operating
>>> system .
>>>
>>> This means that you can not execute 32 bits programs in a 64 bits
>>> operating system without such support .
>>>
>>> In the following page :
>>>
>>> http://www.duntemann.com/assembly.html [4] [4]
>>>
>>> read
>>>
>>> "If You Have a 64-Bit PC..."
>>>
>>> the especially .
>>>
>>> "64-Bit PC" is misleading : It should be "64-Bit Operating System"
>>> .
>>>
>>> Both Intel and AMD x86 processors mainly support both 32 and 64 bit
>>> operating systems : They are able to execute 32 and 64 bit
>>> instructions .
>>>
>>> Therefore , important points are bit size of ( 32 or 64 ) operating
>>> system , and handling capability of this feature by compilers and
>>> availability of libraries , and support by the operating system .
>>>
>>> It is necessary to have information about 64 bit assembly
>>> programming
>>> in an 64 bit operating system .
>>>
>>>
>>>
>> http://www.amazon.com/Introduction-Intel-Assembly-Language-Programming/d=
p/1478119209/ref=3Dpd_sim_14_1?ie=3DUTF8&refRID=3D15NZ1SBWCZAMH1X6KPZG
>>
>>> [5]
>>> [5]
>>>
>>> Introduction to 64 Bit Intel Assembly Language Programming for
>>> Linux:
>>> Second Edition Paperback =E2=80=93 June 23, 2012
>>> by Benjamin Ray Seyfarth (Author)
>>>
>>
>>  mehmet, thanks for the link to that book by benjamin ray seyfarth.
>>
>>  my objective for learning assembly was to understand the inner
>> workings of the machine, but i guess that could get accomplished with
>> a good understanding of "machine organization".
>>
>>  randall hyde's "write great code (vol 1)" is an excellent book on
>> "machine organization", just that one of the languages used for
>> example code is 'hla' and hence my inquiry into support for running
>> 'hla' under freebsd.
>>
>>  best,
>>
>>  ~mayuresh
>>
>> Using a widely adopted and supported by a community assembler such as
>> "nasm" is much better than using a special purpose assembler ( for me
>> with very useless statement kinds ) such as "hla" is a better approach
>> when portability and maintainability of written sources over time is
>> considered .
>>
>> I have look at the "hla" many times and come to a conclusion "never
>> use it" .
>>
>> If a high level language is required , "C" may be used .
>>
>
> yes, agreed about the impractical nature of 'hla', but for me, it's an
> educational tool, just like scheme.
> i am yet to see a lot of large industrial grade software applications
> written in scheme, except perhaps "emacs". ;)
> btw, how did you get 'hla' to work under freebsd? was it under the 10.x
> series?
>
> ~mayuresh
>
>


I never use assembly programming . For a 64 bit code generation program I
will use "nasm" .

Even as an educational tool , do not waste your time and efforts by using
"hla" .

Select "nasm" if you need to use an assembler  exactly and use "C"  as much
as possible for low level hardware programming .

Always use "Standard" definitions for programming languages , avoid
"extensions" and "modifications" just like escaping from a very dangerous
poisonous snake .

Over time , all of such "extensions" will be a very difficult to rescue
yourself "nightmare" .


Thank you very much .


Mehmet Erol Sanliturk



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOgwaMvP17LjkJ_Lysr_5PF16ursA75EsG2U6m3a3Q1BC2hPTw>