Welcome, Guest. Please login or register.

Author Topic: Layers.library V45 on the aminet  (Read 65533 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline psxphill

Re: Layers.library V45 on the aminet
« Reply #314 from previous page: September 17, 2014, 08:59:34 AM »
Quote from: kolla;773206
GCC (and glibc) for m68k has gotten quite a bit of attention the last few years and is far from "shockingly bad". Upgrade already.

Can you back that up, I can't find any proof of that online.

Quote from: vxm;773181
As far as I can remember, probably during training in microelectronics in the 80s:
"in 1972 the first version of C is written in assembler by Brian W. Kernighan and Dennis M. Ritchie."

The C compiler was based on the B compiler, which had already been re-written in B by this point. B was originally written in TMG, but TMG was written in assembler by Doug McIlroy.

Never believe anything they teach you in school.

http://cm.bell-labs.com/cm/cs/who/dmr/chist.html
« Last Edit: September 17, 2014, 09:19:12 AM by psxphill »
 

Offline vxm

  • Jr. Member
  • **
  • Join Date: Apr 2012
  • Posts: 59
    • Show only replies by vxm
Re: Layers.library V45 on the aminet
« Reply #315 on: September 17, 2014, 10:04:11 AM »
Quote from: psxphill;773221
Never believe anything they teach you in school.

I agree, and that's one reason why I never learned C. Another is that it is always better to avoid the use of an interpreter.
 

Offline wawrzon

Re: Layers.library V45 on the aminet
« Reply #316 on: September 17, 2014, 10:06:42 AM »
Quote from: matthey;773214
Vbcc can cross compile from x86 or PPC which is generally all that is needed for fast cross compiling to 68k. AROS is using GCC specific functionality which is a problem. Vbcc has good C99 compatibility now (new unreleased version) and Frank Wille's vlink supports the AROS 68k ELF format. Frank Wille and the AROS developers need to hammer out the necessary changes to get it to work. There isn't a lot of motivation with GCC 68k code generation quality improving lately though.


okay, another informed opinion that gcc 68k backend improved. im sure matt bases it on own experience. of course if someone found solution to modify aros source to compile with vbcc or to extend vbcc with the necessary gcc functionality it would be also fine, but yet again this must be out of own motivation. hard to believe there will be significant amount of interest let alone money to rely on.
 

Offline wawrzon

Re: Layers.library V45 on the aminet
« Reply #317 on: September 17, 2014, 10:25:39 AM »
Quote from: Karlos;773220
Not exactly. This work pre dated OS4. I never released it at the time because in fixing a few bugs (and doubtless introducing new ones) I broke compatibility with a few applications. Most notably some of the better demos. I wrote entire suites of tests and can honestly say the driver honoured the API but there exists a corpus of software that relied on some obscure undocumented and likely accidental side effects of the original code. And while the improved performance in synthetic tests was nice, the gains were marginal in most games because the bottlenecks where elsewhere (esp. on ppc).

And that's the moral of this story. Optimising the %&$#?@!%&$#?@!%&$#?@!%&$#?@! out of a single small area often leaves you with little to show for it other than more bugs than you started with. None of the fixes to the v4 drawing calls mattered for existing software except to my projects, and they were still broken / unimplemented in the other drivers, so my software was left running on P2 when voodoo was fast becoming the norm. MiniGL went from v3 api calls to v5 (OS4 only) rendering those fixes irrelevant for most applications.

I had marginally faster minigl 1.5 / heretic 2 / glquake and a lot of wrecked elude demos.




I'd be happy to release it, but it isn't up to me. Warp3D belongs to Hyperion and is now part of OS4. It's also deprecated so they may be ok with it. Either way, I'd have to ask.


you have had access to the sources and been working on a w3d driver predating os4? wow!
now: dont understand me wrong, ï dont expect wonders and also im not making demands. i was actually rather commenting on a general attitude to keep features for os4 even though they could be ported to 68k, or even opening them altogether, even if it was just for educational reasons or for code preservation. this might been legitimate as long as there have been slightest chance for securing an own commercial niche. but it seems for os4 such a chance if ever must have exist only at the very beginning.

now, this attitude seems to change now a little. at least when it comes to contributors, such as in case of the topic here, olsens roadshow or os4 mui maintainers. probably it is plain impossible to prevent such a notion, whoever would like to do it, as soon as it gains own dynamic. i wonder if some day at least the sources of improvements will be published, even if the original ones will remain locked off.
 

Offline kamelito

Re: Layers.library V45 on the aminet
« Reply #318 on: September 17, 2014, 06:16:47 PM »
@Olsen @Thor,

Since it's too late to go back to school, could you please give a list of good books to go from a "coder" to a "software engineer". Being about C, C++, Algorithms, Design patterns whatever else suit you.

Thanks
Kamelito
 

Offline kolla

Re: Layers.library V45 on the aminet
« Reply #319 on: September 17, 2014, 07:21:39 PM »
Quote from: psxphill;773221
Can you back that up, I can't find any proof of that online.


From the top of my head, thread local storage (TLS) support for m68k and coldfire was added in gcc 4.5, by people from codesourcerer, an embedded company. A lot of improvements in gcc are general and also affect m68k. Improvements to coldfire support are also reflected on the m68k since they are so similar. Check the gcc changelogs.

https://gcc.gnu.org/gcc-4.5/changes.html for example.

Personally I have spent lots of time on Gentoo for Linux/m68k, and can from experience just say that it works pretty well.
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC
---
A3000/060CSPPC+CVPPC/128MB + 256MB BigRAM/Deneb USB
A4000/CS060/Mediator4000Di/Voodoo5/128MB
A1200/Blz1260/IndyAGA/192MB
A1200/Blz1260/64MB
A1200/Blz1230III/32MB
A1200/ACA1221
A600/V600v2/Subway USB
A600/Apollo630/32MB
A600/A6095
CD32/SX32/32MB/Plipbox
CD32/TF328
A500/V500v2
A500/MTec520
CDTV
MiSTer, MiST, FleaFPGAs and original Minimig
Peg1, SAM440 and Mac minis with MorphOS
 

Offline Cass

  • Hero Member
  • *****
  • Join Date: Apr 2003
  • Posts: 826
  • Country: 00
    • Show only replies by Cass
Re: Layers.library V45 on the aminet
« Reply #320 on: September 17, 2014, 08:33:01 PM »
@Thomas Richter
Congratulations for your hard work and this update! I didn`t read the whole 16 pages thread but I tried to install it on my A4000. My config is the following:
H/W : CSPPC, CV3D, ALGOR, X-SURF
S/W : WB3.9 & BB ( i think the latest official, that would be #2), AfaOS, P96

The results:
When loaded as a module on ALGOR it failed to boot, When I tried with the c:loadmodule and all the intructions on readme, I managed to get to WB but with trashed backdrop, and the system froze after a few click or mouse movement.

I suspect it has to do with AfaOS, but any other suggestion would be nice...
« Last Edit: September 17, 2014, 08:44:01 PM by Cass »
"If we don't got it, you don't want it!"
 

Offline olsen

Re: Layers.library V45 on the aminet
« Reply #321 on: September 18, 2014, 08:35:32 AM »
Quote from: kamelito;773249
@Olsen @Thor,

Since it's too late to go back to school, could you please give a list of good books to go from a "coder" to a "software engineer". Being about C, C++, Algorithms, Design patterns whatever else suit you.

Thanks
Kamelito
Well, you asked for it ;)

The difference between coder and software engineer, as I'd like to frame it for the purpose of pointing you to the books which completely changed how I work, is that as a software engineer you are going to find yourself doing more challenging and complex work, and if you persist in practicing what you learned as a coder, you will start hating your work. Something has to change between "coder" and "software engineer", and it's *you*.

If you are writing software, you will make mistakes and will need to correct them. This inevitably means returning to old code, rereading, understanding and reworking it. You will be surprised by how long-lived even tiny throw-away snippets will be. For this reason you need to write code in such a way that returning to modify it will not be painful. In so many words, the way you "construct" your programs matters.

There are three books which profoundly changed how I work. These are "Debugging the development process", "Writing solid code" and "Code complete". The first two were written by Steve Maguire and are probably out of print (but can be bought used rather cheaply). The last was written by Steve McConnell and is still in print. If you are going to read just one of these books, make it "Code complete". The drawback of "Code complete" is that it's rather long, though, while the other two books are shorter. However, I found that reading "Code complete" is exceptionally rewarding. Every chapter you read will change how you work and build software, if you are willing to question the way how you work today.

As for books on algorithms, I wish I could point to a set that was helpful to me, but the fact is that most algorithm collections are either very mathematically inclined, or used as teaching tools in computer science education. This means that if you need a solution for a practical problem you'll either have to wade through pages and pages with greek lettering and proofs that, yes, the algorithm actually does work (never mind how it works), or you'll get useful information on implementing algorithms from which one crucial piece is missing because the book uses that missing piece in a course exercise (you now know how to correctly construct a B-tree, but you don't know how to remove nodes from it, and you'll probably make big honking mistakes building an implementation of that, and it's three in the morning and your project is due by noon tomorrow, and you just ran out of coffee, and you are wearing sunglasses because your eyes hurt, and what could possibly go wrong now).

So... the next best thing I can recommend is a book that explains the basic algorithms which you are going to find are used pretty much everywhere. There are highly specialized algorithms, such as for cryptography, graphs or numerics, but you'll probably meet sorting and searching in most of the work you do. These basics are decently explained in books such as "Algorithms" by Robert Sedgewick. This book is still affordably priced, and the older used versions aren't so bad either, and cheaper.

The big problem with algorithms in general is that you need to know where to look when you are working on a problem which requires a better optimized solution than the basic stuff you knocked together. Not everything can be tackled as an application of sorting or searching algorithms, or whatever tricks you learned so far. But before you can look for a solution, you need to know where to look, except you don't even know where to start looking. Sound familiar? I found help in a book called "The algorithm design manual" by Steven Skiena. It contains a big catalog of algorithmic problem categories. Flip through the pages, read the introductions, consider if they generally match your problem, and if they do, look up the material listed on the page. There is an online version to complement the printed book at http://www3.cs.stonybrook.edu/~algorith/, don't miss it.
« Last Edit: September 18, 2014, 08:39:31 AM by olsen »
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1149
    • Show only replies by Thorham
Re: Layers.library V45 on the aminet
« Reply #322 on: September 18, 2014, 03:34:01 PM »
Wikipedia seems to have some good articles about software engineering.

Software engineer: http://en.wikipedia.org/wiki/Software_engineer
Software engineering: http://en.wikipedia.org/wiki/Software_engineering
 

Offline Cosmos

  • Hero Member
  • *****
  • Join Date: Jan 2007
  • Posts: 949
    • Show only replies by Cosmos
    • http://leblogdecosmos.blogspot.com
Re: Layers.library V45 on the aminet
« Reply #323 on: September 18, 2014, 04:53:52 PM »
Quote from: olsen;773283
There are three books which profoundly changed how I work. These are "Debugging the development process", "Writing solid code" and "Code complete". The first two were written by Steve Maguire and are probably out of print (but can be bought used rather cheaply). The last was written by Steve McConnell and is still in print. If you are going to read just one of these books, make it "Code complete". The drawback of "Code complete" is that it's rather long, though, while the other two books are shorter. However, I found that reading "Code complete" is exceptionally rewarding. Every chapter you read will change how you work and build software, if you are willing to question the way how you work today.http://www3.cs.stonybrook.edu/~algorith/, don't miss it.


For me, learning from books is a mistake : the better and best way is to learn by yourself.

Start learning with tiny programms, understand how they works, modify them...

Little by little, your skill will grow up. When you don't understand something, email a confirmed coder (by not Thomas Richter, please !) for explanations... And so on...

I do that for me and I reached an high level...


Good luck !!


:)

Offline itix

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2380
    • Show only replies by itix
Re: Layers.library V45 on the aminet
« Reply #324 on: September 18, 2014, 05:24:22 PM »
Quote from: Cosmos;773305
For me, learning from books is a mistake : the better and best way is to learn by yourself.

Start learning with tiny programms, understand how they works, modify them...


Your coding skills get better when you see fancy constructs but theory is still important. From books you can learn new algorithms, coding practises, development models, optimization (famous big O) and anything that helps to write better code in any language.

I used to be asm coder like you but when I had my first optimization class at uni I realized I had done it wrong. I was looking at details when I should have looked at the bigger picture.
My Amigas: A500, Mac Mini and PowerBook
 

Offline olsen

Re: Layers.library V45 on the aminet
« Reply #325 on: September 18, 2014, 05:30:15 PM »
Quote from: Cosmos;773305
For me, learning from books is a mistake : the better and best way is to learn by yourself.


I have to disagree with you on that.

The best way to learn is to experiment/explore, make mistakes and find out why you made them, then avoid making them again if possible. The problem with making mistakes is knowing when you are making them.

If you are lucky, you will, after a while, realize by yourself that you made a mistake or left an alternative option to solve a problem unexplored.

You don't always get lucky. It's by far more effective to know somebody who understands your work, can give you his opinion on it and offer insights.

A third person may be able to tell you when you are on the wrong track, drawing the wrong conclusions or have falsely convinced yourself of having explored a problem to the fullest. All by yourself you are far less likely to arrive at the same conclusion.

There's a term for that: confirmation bias. Don't believe that you are immune, you're human like the rest of us.
 

Offline olsen

Re: Layers.library V45 on the aminet
« Reply #326 on: September 18, 2014, 05:49:14 PM »
Quote from: Thorham;773304
Wikipedia seems to have some good articles about software engineering.

Software engineer: http://en.wikipedia.org/wiki/Software_engineer
Software engineering: http://en.wikipedia.org/wiki/Software_engineering

These articles are, frankly, a bit scary. Back when I started out programming computers in my spare time, as a hobby, I didn't realize how long the road ahead would be before I became a halfway decent programmer.

Part of the journey took me through practicing the craft (which everybody can do in his own home, without any heavy lifting involved, except for flipping through those heavy 'C' compiler reference manuals and operating system documentation), part of it took me through a professional education.

If you didn't know with all your heart that programming was fun, interesting and worth the slog, you probably wouldn't want to follow through the professional education, as it is too often tedious, impractical and unfairly challenging. This can be pretty dry and boring (I hope that I'll never have to sit through another lecture on stochastics or information theory; luckily, I got my degree and probably never will have to sit through any of these again!), and these two Wikipedia articles are far from making this profession appear to be something you might want to spend the rest of your life practicing.

As for the books I mentioned, I think they are helpful for practicing the craft even if you don't consider going the route of getting a professional education in the field. What you will find in them metaphorically makes the difference between chopping down a tree using nail clippers or, well, an actual axe, when it comes to programming.
 

Offline Cosmos

  • Hero Member
  • *****
  • Join Date: Jan 2007
  • Posts: 949
    • Show only replies by Cosmos
    • http://leblogdecosmos.blogspot.com
Re: Layers.library V45 on the aminet
« Reply #327 on: September 18, 2014, 05:51:01 PM »
Quote from: olsen;773310
I have to disagree with you on that.

The best way to learn is to experiment/explore, make mistakes and find out why you made them, then avoid making them again if possible. The problem with making mistakes is knowing when you are making them.

If you are lucky, you will, after a while, realize by yourself that you made a mistake or left an alternative option to solve a problem unexplored.

You don't always get lucky. It's by far more effective to know somebody who understands your work, can give you his opinion on it and offer insights.

A third person may be able to tell you when you are on the wrong track, drawing the wrong conclusions or have falsely convinced yourself of having explored a problem to the fullest. All by yourself you are far less likely to arrive at the same conclusion.

There's a term for that: confirmation bias. Don't believe that you are immune, you're human like the rest of us.

No, no, sorry : the authors of your books will "programm" the readers beginner to follow a way...

I started asm using 2 books and the result was a give up : I understood few things only...

After some years, I started again with my method described above, and this time it works good for me...

I wrote my story here (in french, but you can translate using "Traduction" on the left) : http://assembly68k.blogspot.fr/p/blog-page_24.html

For me, the best is to learn by yourself, to "build" YOUR own way with using (and developping) your imagination and understanding...


Anyway, do what you feel better for you, I just give here my opinion and my experience...



:)

Offline olsen

Re: Layers.library V45 on the aminet
« Reply #328 on: September 18, 2014, 06:02:19 PM »
Quote from: Cosmos;773316
No, no, sorry : the authors of your books will "programm" the readers beginner to follow a way...
This is what an education does, doesn't it? Same thing about religion...

Programming and the different practices of programming have been invented and reinvented multiple times, starting with the 19th century, and have finally been reduced to theory in the 20th century.

You are likely following the invisible footsteps of somebody who came before you. Your journey and the discoveries you made will be your own, but there is a wide world out there which already shares these ideas and has been expanding upon them for more than 70 years.

The guys outside your room who practice the same craft know a thing or two which you are missing out on.

Quote from: Cosmos;773316
For me, the best is to learn by yourself, to "build" YOUR own way with using (and developping) your imagination and understanding...

Anyway, do what you feel better for you, I just give here my opinion...
:)
Best of luck to you! If this is what works for you, who am I to criticize you?
« Last Edit: September 18, 2014, 06:15:20 PM by olsen »
 

Offline Minuous

Re: Layers.library V45 on the aminet
« Reply #329 on: September 18, 2014, 06:35:31 PM »
Quote from: olsen;773283
There are three books which profoundly changed how I work. These are "Debugging the development process", "Writing solid code" and "Code complete".

I've read the 2nd and 3rd of these, and can confirm they are very good for high-level language programmers (maybe less relevant for assembly language coders such Cosmos). They are available at http://amigan.1emu.net/aw/
« Last Edit: September 18, 2014, 06:43:17 PM by Minuous »