FreeDOS support
FreeDOS support
Hi,
while waiting impatiently for my pyboard, I build micropython for unix and played a bit with it. I'm impressed by it's loading speed. You did a great job. I'm looking forward to test the pyboard on my project.
We use a DOS environment at work (for some things we need to). To get the things done, we are doing, I implemented a big program in pure python (pythond 2.4.2). Since I use the same codebase to run the program on windows, I'm still bound to Python2.
If there would be a FreeDOS port of micropython I could make the jump to Python3 (using normal python+qt on windows).
Dos is still used in some special areas, such as system maintenance/diagnose. It boots in under 5s. Writing batch scripts in this area is no fun and very limited... The power of python puts the fun back into DOS
Is there a chance to get a FreeDos (DJGPP) build of micropython?
while waiting impatiently for my pyboard, I build micropython for unix and played a bit with it. I'm impressed by it's loading speed. You did a great job. I'm looking forward to test the pyboard on my project.
We use a DOS environment at work (for some things we need to). To get the things done, we are doing, I implemented a big program in pure python (pythond 2.4.2). Since I use the same codebase to run the program on windows, I'm still bound to Python2.
If there would be a FreeDOS port of micropython I could make the jump to Python3 (using normal python+qt on windows).
Dos is still used in some special areas, such as system maintenance/diagnose. It boots in under 5s. Writing batch scripts in this area is no fun and very limited... The power of python puts the fun back into DOS
Is there a chance to get a FreeDos (DJGPP) build of micropython?
Re: FreeDOS support
I'm not aware of anybody working on such a port, but it should be possible.
In the open source world, I believe that the expression goes "patches welcome".
In the open source world, I believe that the expression goes "patches welcome".
Re: FreeDOS support
Yes, as long as you talk about DJGPP and 32-bit DOS extender support, it should be possible. But effort indeed should be driven by folks who need it. I'd rather work on arm64 port instead for example .
Awesome MicroPython list
Pycopy - A better MicroPython https://github.com/pfalcon/micropython
MicroPython standard library for all ports and forks - https://github.com/pfalcon/micropython-lib
More up to date docs - http://pycopy.readthedocs.io/
Pycopy - A better MicroPython https://github.com/pfalcon/micropython
MicroPython standard library for all ports and forks - https://github.com/pfalcon/micropython-lib
More up to date docs - http://pycopy.readthedocs.io/
Re: FreeDOS support
I will set up a build environment and report back.
Re: FreeDOS support
Can't get it to compile. Don't have much of a clue about compiling... Is there a good cross compiler apart from djgpp?
could someone with better knowledge assist me?
could someone with better knowledge assist me?
FreeDOS port
Hi everyone! I want to make some port for FreeDOS, since we use it in some embedded things. As I expect, I need to redefine couple of hal functions, but can't find list or something with them on wiki. Also, can't get where is micropython core. Is it "py" directory? Maybe there is some "information about porting" so I will just get off for reading?
Thanks for great project!
Thanks for great project!
Re: FreeDOS port
No there isn't any documentation on porting.
The core of micropyton is in the py directory. You should probably look at something like the minimal port as a starting place.
The HAL generally changes from port to port. The common stuff that we do use can be found in py/mphal.h which mostly relates to stdin/stdout and some timing routines.
The core of micropyton is in the py directory. You should probably look at something like the minimal port as a starting place.
The HAL generally changes from port to port. The common stuff that we do use can be found in py/mphal.h which mostly relates to stdin/stdout and some timing routines.
Re: FreeDOS support
Unix minimal port as a starting place. And better to search forum first (merged into older topic).
Awesome MicroPython list
Pycopy - A better MicroPython https://github.com/pfalcon/micropython
MicroPython standard library for all ports and forks - https://github.com/pfalcon/micropython-lib
More up to date docs - http://pycopy.readthedocs.io/
Pycopy - A better MicroPython https://github.com/pfalcon/micropython
MicroPython standard library for all ports and forks - https://github.com/pfalcon/micropython-lib
More up to date docs - http://pycopy.readthedocs.io/
Re: FreeDOS support
It looks like there is no cheap way to build micropython for dos. I tried out OpenWatcom, cause I have success with building Lua 5.3.1 for FreeDos with it. But OpenWatcom does not work with make files and some gcc-specific syntax (like __attribute__). After I tried DJGPP, which was built via https://github.com/andrewwutw/build-djgpp. But make breaks on assembly nlrx86.S with syntax(?) errors:
I have no experience with Gas (and almost nothing with intel asm) and don't get what is going on here
Is there way to exclude/replace assemly files? Or is there simple solution for this?
Code: Select all
CC ../py/nlrx86.S
../py/nlrx86.S: Assembler messages:
../py/nlrx86.S:57: Warning: .type pseudo-op used outside of .def/.endef ignored.
../py/nlrx86.S:57: Error: junk at end of line, first unrecognized character is `n'
../py/nlrx86.S:74: Warning: .size pseudo-op used outside of .def/.endef ignored.
../py/nlrx86.S:74: Error: junk at end of line, first unrecognized character is `n'
../py/nlrx86.S:86: Warning: .type pseudo-op used outside of .def/.endef ignored.
../py/nlrx86.S:86: Error: junk at end of line, first unrecognized character is `n'
../py/nlrx86.S:94: Warning: .size pseudo-op used outside of .def/.endef ignored.
../py/nlrx86.S:94: Error: junk at end of line, first unrecognized character is `n'
../py/nlrx86.S:106: Warning: .type pseudo-op used outside of .def/.endef ignored.
../py/nlrx86.S:106: Error: junk at end of line, first unrecognized character is `n'
../py/nlrx86.S:131: Warning: .size pseudo-op used outside of .def/.endef ignored.
../py/nlrx86.S:131: Error: junk at end of line, first unrecognized character is `n'
Is there way to exclude/replace assemly files? Or is there simple solution for this?
Re: FreeDOS support
You could try using the generic setjmp/longjmp handler by setting: in your mpconfigport.h file.
Then it won't use the assembler file version.
Code: Select all
#define MICROPY_NLR_SETJMP (1)
Then it won't use the assembler file version.