[Freedos-kernel] Fwd: [Freedos-user] Any interest in 486, 586, 686 kernels?

2013-05-05 Thread Louis Santillan
Whoops, didn't realize that I replied to fd-user instead of kernel.

One other note, all kernels are slightly bigger withe options I set.

-L

-- Forwarded message --
From: Louis Santillan lpsan...@gmail.com
Date: Sun, May 5, 2013 at 9:01 AM
Subject: Re: [Freedos-user] Any interest in 486, 586, 686 kernels?
To: Discussion and general questions about FreeDOS. 
freedos-u...@lists.sourceforge.net


Badly written ifdef in memdisk.asm. Fixed such that 486+ compiles.  Read (
ftp://openwatcom.mirrors.pair.com/manuals/current/cguide.pdf) and sections
2.3.x  3.5.  Enlightening and disappointing.  There does not seem to be a
way to get 32-bit instructions out of wcc as Tom had mentioned.  3.5
recommends

The recommended options for generating the fastest 16-bit Intel code are:
Pentium Pro /onatx /oh /oi+ /ei /zp8 /6 /fpi87 /fp6
Pentium /onatx /oh /oi+ /ei /zp8 /5 /fpi87 /fp5
486 /onatx /oh /oi+ /ei /zp8 /4 /fpi87 /fp3
386 /onatx /oh /oi+ /ei /zp8 /3 /fpi87 /fp3
286 /onatx /oh /oi+ /ei /zp8 /2 /fpi87 /fp2
186 /onatx /oh /oi+ /ei /zp8 /1 /fpi87
8086 /onatx /oh /oi+ /ei /zp8 /0 /fpi87

-ot of -onatx  -zp8 contradict the original makefile's code -os  -zp1
(optimize execution time vs. executable size  align on byte vs. 8-byte,
respectively).  Also, the -fp*'s opts don't apply and wcc barfs on -oi+.

So in mkfiles\watcom.mk I added some code to add -6-onaxlkh-ei (for 686).
 This will reorder instruction significantly and replace some call nears
with jmps in a comparison of 386 timed code vs. 686 timed code.  Code is
larger on the 686 side.

So far, not very impressed with OW 1.9's optimizer. Rather minimal
improvements.  Anybody play with BCC 5.5  HX-DOS recently?

-L



On Sat, May 4, 2013 at 3:27 AM, Tom Ehlert t...@drivesnapshot.de wrote:

 Hallo Herr Louis Santillan,


  https://sites.google.com/site/lpsantil/Home/386DIS.ZIP
  https://sites.google.com/site/lpsantil/Home/686DIS.ZIP
  https://sites.google.com/site/lpsantil/Home/PATCHES.ZIP
  https://sites.google.com/site/lpsantil/Home/kernels.zip

 the differenz is an empty memdisk.lst (for whatever reason)
 everything else is *identical*

 I'm not impressed

 Tom



 --
 Get 100% visibility into Java/.NET code with AppDynamics Lite
 It's a free troubleshooting tool designed for production
 Get down to code-level detail for bottlenecks, with 2% overhead.
 Download for free and get started troubleshooting in minutes.
 http://p.sf.net/sfu/appdyn_d2d_ap2
 ___
 Freedos-user mailing list
 freedos-u...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/freedos-user

--
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with 2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Fwd: [Freedos-user] Any interest in 486, 586, 686 kernels?

2013-05-05 Thread Bernd Blaauw
Louis Santillan schreef op 5-5-2013 18:28:
 Whoops, didn't realize that I replied to fd-user instead of kernel.

 One other note, all kernels are slightly bigger withe options I set.

I guess it depends on what the compilers do:
[1] optimize for certain processor architecture(s)
[2] also keep backwards compatibility or not with lowest desired level

if [2] then the binary might be larger on disk.

If someone likes a real challenge, a smaller kernel can be produced 
using UPX --8086 --lzma --ultra-brute
(instead of UPX --8086 --best) but the end-result is not bootable, 
requiring a decompressor stub. Savings is about 3KB disk footprint.

As for the MEMDISK support there's additional support implemented at 
https://github.com/PerditionC/fdkernel but it requires me to first 
create additional testcases using some kind of floppy image file.
Basically it allows specifying a CONFIG.SYS line at Syslinux menu so you 
can alternate memory driver in a menu for example, or specify UMB 
regions, that kind of stuff

DEVICE?= and JEMMEX are quite revealing in option parsing :)

(and some ctrl-alt-del issues crashing FreeCOM in VMware)

Bernd

--
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with 2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel