Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Z. B.
On Sat, Jan 13, 2018 at 08:06:15PM +0300, Ercan Ersoy wrote:

> FreeDOS Arduino Port doesn't have to graphics. For managing shell, we can
> use only a UART on Arduino. We needn't 8k RAM for managing standard input,
> standard output and standard error.

Even before you start to discuss technical details - trying to persuade
developers who are much more familiar with the entire FreeDOS thing than
yourself - you should address the very basic question, which has been asked
already twice: WHY, WHAT FOR?

Even, if it was feasible - you encourage others to start really serious and
time-consuming work only because "it would be kinda cool to see DOS running
on Arduino"?
-- 
regards,
Zbigniew

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ercan Ersoy

I have written some issues for Arduino Port of FreeDOS on freedos-devel.

https://www.mail-archive.com/freedos-devel@lists.sourceforge.net/msg11347.html

Best regards,
Ercan


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ercan Ersoy
I know this. But, FreeDOS Arduino Port don't need C: for storage,  
it needs A: and B: generally. A: for flash memory on  
microcontroller, B: for SD card. Flash memory device driver and SD  
card device driver is simpler than floppy disk device driver, hard  
disk device driver and PATA device driver.


DOS stands for Disk Operating System

Drivers for the actual media aside, you need the space to hold the  
"disk" related memory structures. And what "flash memory" do you  
want to use for that A: drive (or any drive letter for that matter)?


Sorry for my mistake.

The Arduino Port of FreeDOS needs A: certainly and this port may need  
B:. A: for SD card. B: for network storage driver that it may be TFTP  
or USB pendrive on some Arduino models these are connect USB shield or  
USB module.



--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ralf Quint

On 1/13/2018 9:06 AM, Ercan Ersoy wrote:


FreeDOS Arduino Port doesn't have to graphics. For managing shell, we 
can use only a UART on Arduino. We needn't 8k RAM for managing 
standard input, standard output and standard error.
You don't need graphics, but even to manage a 80x25 text screen, you 4KB 
of RAM, no way how you try to bend it...



For FreeDOS Arduino Port needs major source code changes.


No it needs goal changes. Think about the system requirements to have 
a complete DOS with kernel and command.com and think whether you find 
any Arduino with at least 10% of the power, then think what would 
happen to DOS if you cut away 90% :-p
Well, this is more in response to Eric, but "power" is quite a bit 
relative here. RAM resources is what is lacking in an Arduino, not pure 
processing power. In that regards, those 8 bit AVR RISC processors, with 
their 32 registers, are actually quite powerful.


For developing FreeDOS Arduino Port, we should remove device drivers 
that are manage missing device on Arduino. For example, device driver 
of floppy disk remove for this port. For more examples, we should 
remove hard disk device driver, CD-R device driver, PATA device driver.


Also, this port needn't complex memory manager and ISO9660 file system 
driver.

...
I know this. But, FreeDOS Arduino Port don't need C: for storage, it 
needs A: and B: generally. A: for flash memory on microcontroller, B: 
for SD card.
Flash memory device driver and SD card device driver is simpler than 
floppy disk device driver, hard disk device driver and PATA device 
driver.

DOS stands for Disk Operating System
Drivers for the actual media aside, you need the space to hold the 
"disk" related memory structures. And what "flash memory" do you want to 
use for that A: drive (or any drive letter for that matter)?


Ralf

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ralf Quint

On 1/13/2018 1:30 AM, Ercan Ersoy wrote:


For FreeDOS Arduino Port needs major source code changes.

Arduinos' microcontrollers (AVR and ARM) based on Harvard 
Architecture. For this reason, FreeDOS Arduino port can needs less 
resources.

Sorry to be this blunt, but this is simply bollocks!
Just try to properly emulate all the INT 21h calls and see how much 
resources you're using.
All the DOS memory areas for basic system info use more RAM than you 
have available on a standard Arduino.


At least, Arduino's have a UART. Standard input, standard output and 
standard error can direct to UART. For this reason, FreeDOS on Arduino 
can control by a terminal emulator (for example PuTTY). Also, most of 
Arduino's or clone ones one USART connected internal USB to UART 
converter. 
Again, you would need additional resources to emulate all the ports and 
BIOS calls from an Intel based system, upon which DOS is based, on the 
RISC AVR microcontroller.


If you have a system with less than 64KB of RAM, regardless of how much 
Flash ROM you have, you will have a VERY hard time to get anywhere. Not 
to mention that pretty much everything in DOS is based on the layout of 
16bit x86 architecture, register, interrupts and memory layout. 
Emulating this on any kind of non x86 architecture will rather use MORE 
resources, not less...
And even if you get something that looks like working, it is still a 
question as to how useful it might be.


As I mentioned in an earlier post, the only path that would have worked 
to get FreeDOS as another viable option for embedded/IoT systems would 
have been those Quark based systems that Intel killed off last year.


Ralf


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ercan Ersoy
Hi! Harvard Architecture with separate program and data memory does  
NOT mean that you suddenly can get 640k x86 DOS performance out of a  
simple controller with 8k RAM. Sorry guys, this is total wishful  
thinking. But because you again mention the serial port UART: Maybe  
you want to write a port of the SERIAL PORT TERMINAL with ANSI  
ESCAPE support built in (so no ANSI.SYS driver needed).


ANSI terminal support doesn't problem. Because, ANSI terminal library  
program applications exist for Arduino.


Somebody already made a BIOS version of that for x86 and it fits  
into 8 kilobytes. The DOS version fits into only 4 kilobytes on  
disk. Note that 80x25 chars of color text already need 4 kilobytes  
of graphics card RAM, but most displays for microcontrollers have  
that built in ;-)


https://www.auersoft.eu/soft/ (terminal-*.* 2001 to 2007)


FreeDOS Arduino Port doesn't have to graphics. For managing shell, we  
can use only a UART on Arduino. We needn't 8k RAM for managing  
standard input, standard output and standard error.



For FreeDOS Arduino Port needs major source code changes.


No it needs goal changes. Think about the system requirements to  
have a complete DOS with kernel and command.com and think whether  
you find any Arduino with at least 10% of the power, then think what  
would happen to DOS if you cut away 90% :-p


For developing FreeDOS Arduino Port, we should remove device drivers  
that are manage missing device on Arduino. For example, device driver  
of floppy disk remove for this port. For more examples, we should  
remove hard disk device driver, CD-R device driver, PATA device driver.


Also, this port needn't complex memory manager and ISO9660 file system driver.

Examples are reproducible.


At least, Arduino's have a UART. Standard input, standard output and
standard error can direct to UART. For this reason, FreeDOS on Arduino
can control by a terminal emulator (for example PuTTY)...


Of course it would be easy to program most microcontrollers to
output the string "C:\>" on UART, but that is NOT the same as
putting DOS on it. DOS really needs a lot more power than that.


I know this. But, FreeDOS Arduino Port don't need C: for storage, it  
needs A: and B: generally. A: for flash memory on microcontroller, B:  
for SD card.


Flash memory device driver and SD card device driver is simpler than  
floppy disk device driver, hard disk device driver and PATA device  
driver.


Best regards,
Ercan


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Eric Auer

Hi! Harvard Architecture with separate program and data
memory does NOT mean that you suddenly can get 640k x86
DOS performance out of a simple controller with 8k RAM.
Sorry guys, this is total wishful thinking. But because
you again mention the serial port UART: Maybe you want
to write a port of the SERIAL PORT TERMINAL with ANSI
ESCAPE support built in (so no ANSI.SYS driver needed).

Somebody already made a BIOS version of that for x86 and
it fits into 8 kilobytes. The DOS version fits into only
4 kilobytes on disk. Note that 80x25 chars of color text
already need 4 kilobytes of graphics card RAM, but most
displays for microcontrollers have that built in ;-)

https://www.auersoft.eu/soft/ (terminal-*.* 2001 to 2007)

> For FreeDOS Arduino Port needs major source code changes.

No it needs goal changes. Think about the system requirements
to have a complete DOS with kernel and command.com and think
whether you find any Arduino with at least 10% of the power,
then think what would happen to DOS if you cut away 90% :-p

> At least, Arduino's have a UART. Standard input, standard output and
> standard error can direct to UART. For this reason, FreeDOS on Arduino
> can control by a terminal emulator (for example PuTTY)...

Of course it would be easy to program most microcontrollers to
output the string "C:\>" on UART, but that is NOT the same as
putting DOS on it. DOS really needs a lot more power than that.

Regards, Eric



--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ercan Ersoy
Sorry, but this is a non-starter. Beside that the 8-RISC processor  
has absolutely nothing in common with the x86 >CPUs that DOS is  
based on. Those ATMega chips are "micro-controllers", not  
"micro-processors/computers". And a >basic Arduino Uno has a  
whooping 2KB of RAM, not much you can do even with DOS on that one,  
and no, a Mega2560 has >only 8KB of RAM, not much more to work with  
either. And by default no keyboard or screen, which is another  
show-stopper...


The Arduino 101 has beside a a 32bit ARC RISC processor (for the IO  
stuff) an x86 Quark/Curie based processor, but >again, with 24KB of  
RAM, you still won't go anywhere fast...


Ralf


For FreeDOS Arduino Port needs major source code changes.

Arduinos' microcontrollers (AVR and ARM) based on Harvard  
Architecture. For this reason, FreeDOS Arduino port can needs less  
resources.


At least, Arduino's have a UART. Standard input, standard output and  
standard error can direct to UART. For this reason, FreeDOS on Arduino  
can control by a terminal emulator (for example PuTTY). Also, most of  
Arduino's or clone ones one USART connected internal USB to UART  
converter.





--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-13 Thread Ralf Quint

On 1/12/2018 2:15 PM, Ercan Ersoy wrote:

Hello,

I'm Ercan Ersoy (creator of DOS Coreutils and FreeDOS TUI Shell) and 
this e-mail address that I use general purpose.


I have an idea.

FreeDOS is a operating system that has some advantages. But, FreeDOS 
only runs PC platform. I think, FreeDOS can be ported other hardware 
such like Arduino.


Arduino is a microcontroller development platform and it is a 
microcontroller. Arduino has some models. People usually use Arduino 
Uno and Arduino Mega2560. Also, Arduino is a open source. Arduino 
models uses AVR microcontroller or ARM microcontroller.


I use orginal Arduino Uno, Arduino Uno clone and Arduino Mega2560 
clone. These are good platforms.


As we all know FreeDOS is written C language. FreeDOS can be ported 8 
bit AVR microcontrollers and 32 bit ARM microcontrollers.


For BIOS interrupts, we can write BIOS like bootloader for FreeDOS


Thanks for interesting, 
Sorry, but this is a non-starter. Beside that the 8-RISC processor has 
absolutely nothing in common with the x86 CPUs that DOS is based on. 
Those ATMega chips are "micro-controllers", not 
"micro-processors/computers".
And a basic Arduino Uno has a whooping 2KB of RAM, not much you can do 
even with DOS on that one, and no, a Mega2560 has only 8KB of RAM, not 
much more to work with either. And by default no keyboard or screen, 
which is another show-stopper...


The Arduino 101 has beside a a 32bit ARC RISC processor (for the IO 
stuff) an x86 Quark/Curie based processor, but again, with 24KB of RAM, 
you still won't go anywhere fast...


Ralf

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-12 Thread ercanersoy
I think developing FreeDOS Arduino port through source code changes  
and some optimizations. Microcontrollers using on Arduino is Harvard  
Architecture. For this reason, FreeDOS Arduino port is requires less  
resource than FreeDOS x86 binaries.


FreeDOS Arduino port may not be realized without major source code  
changes. But, FreeDOS ports of other hardware (Raspberry Pi, Orange  
Pi, CubieBoard, Beagle Bone, Beagle Board etc.) are developable.


Note: I don't have time for creating FreeDOS Arduino port. I won't  
develop FreeDOS ports of other hardware. I suggestted this idea for  
offering.


Best regards,
Ercan


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-12 Thread Eric Auer

Hi Ercan, Bill, others,

The main question probably is WHY: If you port the kernel
to another platform (I think we even once had a 68000 one)
you would also have to port any app that you want to use,
starting with command.com - For both together, you already
need a few 100 kB of RAM which is not available in most
microcontrollers. Next you would need a nice display, while
people tend to use microcontrollers with at most a bit of
LCD or OLED or just a serial port. And of course a keyboard
with a suitable interface to connect it. And a disk, where
you can store files, or at least a large space in flash...

If you ask me, this sounds a lot more like raspberry than
arduino. And given that you can get a raspberry zero with
HDMI screen output and USB for keyboard and flash sticks
for roughly 10 USD, there is not much reason to go smaller.

While raspberry already is SO powerful that you can even
put Linux on it, install DOSEMU in it and run classic x86
FreeDOS with classic DOS apps in the emulation window :-)

About the challenge of making a DOS install very SMALL, you
can check RayeR and his ROMOS where he put a small version
of the FreeDOS kernel and a simple alternative command.com
variant together in some free space in a PC BIOS chip :-)

But then, mainboards with pre-installed tiny Linux & browser
exist as well: The idea is to be online at once without having
to boot the normal operating system from disk. Hibernate and
SSD of modern PC sort of pushed such BIOS goodies out again.

Regards, Eric



--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-12 Thread Z. B.
On Fri, Jan 12, 2018 at 06:30:17PM -0500, William Dudley wrote:

> The Uno wouldn't seem to have enough memory (flash OR RAM) to make this
> worth while.
> 
> The Mega2560 has enough flash (ROM) for the OS and BIOS, but only 8K
> of RAM, so I don't think it would be terribly useful either.

The most basic question is: WHY do this at all? If anyone wants OS suited
for microcontrollers, with interactivity, multitasking etc. then the proper
answer is: Forth. In this particular case amForth, avrForth or flashForth,
as examples.
-- 
regards,
Zbigniew

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


Re: [Freedos-user] Arduino Port of FreeDOS

2018-01-12 Thread William Dudley
The Uno wouldn't seem to have enough memory (flash OR RAM) to make this
worth while.

The Mega2560 has enough flash (ROM) for the OS and BIOS, but only 8K
of RAM, so I don't think it would be terribly useful either.

Bill Dudley


This email is free of malware because I run Linux.

On Fri, Jan 12, 2018 at 5:15 PM, Ercan Ersoy 
wrote:

> Hello,
>
> I'm Ercan Ersoy (creator of DOS Coreutils and FreeDOS TUI Shell) and this
> e-mail address that I use general purpose.
>
> I have an idea.
>
> FreeDOS is a operating system that has some advantages. But, FreeDOS only
> runs PC platform. I think, FreeDOS can be ported other hardware such like
> Arduino.
>
> Arduino is a microcontroller development platform and it is a
> microcontroller. Arduino has some models. People usually use Arduino Uno
> and Arduino Mega2560. Also, Arduino is a open source. Arduino models uses
> AVR microcontroller or ARM microcontroller.
>
> I use orginal Arduino Uno, Arduino Uno clone and Arduino Mega2560 clone.
> These are good platforms.
>
> As we all know FreeDOS is written C language. FreeDOS can be ported 8 bit
> AVR microcontrollers and 32 bit ARM microcontrollers.
>
> For BIOS interrupts, we can write BIOS like bootloader for FreeDOS
>
>
> Thanks for interesting,
>
> Ercan
>
>
> 
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> Freedos-user mailing list
> Freedos-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-user
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user


[Freedos-user] Arduino Port of FreeDOS

2018-01-12 Thread Ercan Ersoy

Hello,

I'm Ercan Ersoy (creator of DOS Coreutils and FreeDOS TUI Shell) and 
this e-mail address that I use general purpose.


I have an idea.

FreeDOS is a operating system that has some advantages. But, FreeDOS 
only runs PC platform. I think, FreeDOS can be ported other hardware 
such like Arduino.


Arduino is a microcontroller development platform and it is a 
microcontroller. Arduino has some models. People usually use Arduino Uno 
and Arduino Mega2560. Also, Arduino is a open source. Arduino models 
uses AVR microcontroller or ARM microcontroller.


I use orginal Arduino Uno, Arduino Uno clone and Arduino Mega2560 clone. 
These are good platforms.


As we all know FreeDOS is written C language. FreeDOS can be ported 8 
bit AVR microcontrollers and 32 bit ARM microcontrollers.


For BIOS interrupts, we can write BIOS like bootloader for FreeDOS


Thanks for interesting,

Ercan


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user