HispaMSX

Re: [hispamsx] comparaciones...

2004-03-26 21:15:07

----- Original Message ----- 
From: "Daniel Caetano" <daniel(_en_)caetano(_punto_)eng(_punto_)br>
To: <hispamsx(_en_)yahoogroups(_punto_)com>
Sent: Friday, March 26, 2004 4:43 PM
Subject: Re: [hispamsx] comparaciones...


On Fri, 26 Mar 2004 13:13:03 -0300, Flyguille wrote:

El MNBIOS está diseñado para aprovechar el mayor potencial
posible del hardware de la norma MSX y mediante este marco
de hardware compatible preever total expandibilidad para el
futuro sin estar atado a chips singulares que ya no se ubican
en el mercado. Siendo una ideal plataforma para los
desarrolladores de nuevo hardware sin mayores esfuerzos en
la implementación del firmware porque no lo necesita abaratando
costos al mismo tiempo.

  In other words, you are recreating the MSX original BIOS, which
was created with these same objectives?

  If I could ever say something, it would be: do not mix things.
One thing is the basic input/output system. Another thing is a
graphical interface and a third thing is an Operating System.
  Mixing them will do no good not for exapandability, nor
compatibility nor efficiency...

The MNBIOS kernel can run on ROM or loaded from DISK... in the same way
without any diference...

I are NOT recreating the same tiny MSX-BIOS because is well-know that got
several limitations and slowdowns... i do a complete new software standard
with enormous possibilities but capable to run in a normal MSX2 hardware or
in a future msx4 hardware without recompilation without lose speed. And that
is already done.

On the kernel got all I/O functions + player + native DISK driver (on other
version instead disk driver will got IDE driver).

The kernel itself no print anything on the screen, all the VIEWABLE aspect
are made by the USER interface... that come well separated on the file
called "MSXCOMMAND.EXEC".




  Usually mixing these parts seems to bring a performance
improvement, but it only does at the cost of throwing the
flexibility (and efficiency for uses not previously thought of)
into the trashcan.

MNBIOS not lose flexibility. For that are 5 kinds of drivers linked in 5
programming levels. And the ADR foresee space for new standard created in
the future



  What I am saying is not new. What I'm saying is the only
reason why many programmers simply choose to ignore that
MSX ever had a BIOS!

  Just to remember some concepts:

  - a BIOS is an abstratcion layer on the hardware, so the software
running in the system must not know every detail about the hardware.

MNBIOS got that.. separate the aplication from the chips...

This targets expandability and simplify the program writing. On the
other hand, no matter how good your BIOS is, it will always decrease
performance in many cases. Also, a BIOS avoid full hardware
exploitation, limitating the hardware use to those situations the
BIOS creator was aware of.

Write an example ..... if we are talking about storage format.... the only
one limitation is the filename up to 12x4 no exist another limitation.

  - An Operating System is something that runs on the system and manages
its resources, simplifying the program writing. Many "read-to-use"
features
may be added at this level, but its primary target is provide a "friendly
environment" to the program and the programmer.

Yes that MNBIOS does.

 Again, many times this will
decrease the performance... but when we talk about multitasking (which
means resource-sharing) this can improve the performance of the system
in the overall (since you do not have to wait the system to print a
documment
so you can read your e-mail).

I think that is a back-ground process , not resource sharing... anyway the
drivers got his buffers... and the MNBIOS got resource sharing system.

 An operating system usually include its own
version of *System BIOS* functions (not attached boards)... for speed up
(monolithic) of for portability sake (microkernel). However, this pratice
will tie the OS to a specific  hardware, requiring software rewriting if
new (incompatible?) hardware is presented.

MNBIOS got kernel version number, and the user interface got his own number
version.

  - A Graphical User Interface is something much, much more complicated
than just showing graphical images and windows. Usually it means a GREAT
overload on the OS, because it must manages its own graphical processes,
because it must manage the screen output also, creating virtual screens so
every application can act as it were running alone in the system. Also, a
GUI is a message oriented environment, and thus a GUI must provide at
least a Single Input Queue, so processes and threads could exchange data.


Not, virtual screen is not the best way in MSX, anyway MS-WINDOWS not use
that.

A graphic user interface is that when, you got windows, and objects on
windows.... pffffffffffff


  Why had I spent so much time writting this? Everyone knows what I
wrote about. It's common knowledge. But I had wrote because one thing:
I was not able to define WHAT is MNBIOS.

Check the ENGLISH programmer manual.

  If it is a BIOS, it should not manage graphical presentation the
way you describes. If it is an Operating System, then your objectives
cannot be too different from UZIX, even if you do not like POSIX (like
me)... which is to make EASY to develop and ... portability is just
one of the faces of expandability. If it is a Graphical User Interface,
what the hell! Why are you talking with the low-level hardware?

You not understand because MNBIOS is all that things... as a package...

UZIX was develop thinking in "C" programming and UNIX compatibility.... UZIX
not got the GOAL be fast and powerfull.

UZIX surelly is great in his market...


  Anyway, the important topic is: why not mix the three levels? Because
they work better in separate layers. If they are well designed, a
programmer can use the level most suits his needs... what level
gives him the better performance and flexibility. The programmer can
CHOOSE, it makes the system more flexible... and flexibility is the
key feature for success! (well, not always... =^)

Yes, MNBIOS provide to the aplications all the programming levels.


  Well, I think you shall continue your project. It's a good project
and everything. I just do not think it is the "panacea" - no software
had ever solved the world... and never will.
  Because the world has a magnific property:
  It always change more than any of us could ever expect.

  This is why life is so... nice! (^=

  My best wishes,

 []'s

Daniel Caetano

You're right...




*HispaMSX. La mailing-list de MSX en castellano*
Para cualquier duda: hispamsx-owner(_en_)yahoogroups(_punto_)com
Web de lista: http://www.hispamsx.org
Enlaces a Yahoo! Grupos

Para visitar tu grupo en la web, accede a:
 http://es.groups.yahoo.com/group/hispamsx/

Para cancelar tu suscripción en este grupo, envía
un mensaje en blanco a:
 hispamsx-unsubscribe(_en_)yahoogroups(_punto_)com

El uso que hagas de Yahoo! Grupos está sujeto a
las Condiciones del servicio de Yahoo!:
 http://es.docs.yahoo.com/info/utos.html




<Anterior en la conversación] Conversación actual [Siguiente en la conversación>