|
![](/i/fill.gif) |
Spider schrieb in Nachricht <36CDAD6D.3F026D07@bahnhof.se>...
>A ine pice of asm coding :
>http://www.algonet.se/~redhog/
>He's currently coding a OS in asm. As far as I know he's already made
>the multitasker....
Believe it or not... but when I was 20, I have coded a simple OS (16k ROM
based OS) for my Acorn BBC-B home computer once, because the one provided
with my double density floppy controller (Acorn only offered single density
then) had too many bugs. So I started writing one from scratch in
BBC-Basic-Assmbler (the assembler was integrated in the Basic and could for
instance use Basic functions as macros and special integer variables as
compile pointers). As memory was a problem, I had to chain several files
together to compile to "upper RAM" (in ROM space) directly. This was
hand-optimised 6502 code. Of course it was not multi-tasking. It was used by
many friends who had the same controller.
A language like Inprise Borland Object Pascal and the component library VCL
uses assembler in time-critical parts (sorting, string functions) or in
parts, where a call couldn't easily be faked using high level Pascal
(because something like non-standard stack handling is required). I've
however seen one example, where optimized Pascal code was *faster* than the
original hand-optimized assembler routine. This was also a string function.
It was the improved algorithm which did the trick.
--
Rudy Velthuis
Post a reply to this message
|
![](/i/fill.gif) |