VOGONS


Reply 40 of 76, by Oerg866

User metadata
Rank Member
Rank
Member

New version was released:

k6init_auto.png?raw=true

  • Complete rewrite
  • Nice fancy new on screen appearance
  • Better error feedback
  • Finer MTRR control introduced, regions can now be specified distinctly as write-combined and/or uncacheable
  • Better memory detection, adding the int 0x15, ax=0xe820 method
  • Fixes support for FIC VA-503(A) motherboards
  • Fix write allocate region being a few KB too small
  • Add control for L1 and on-die L2 cache (if present)

https://github.com/oerg866/k6init/releases/tag/v1.04

Reply 41 of 76, by Siran

User metadata
Rank Newbie
Rank
Newbie

Just wanted to chime in and give a huge thank you for this amazing tool, wish I'd had this 25 years ago already. The auto-detection is a real blessing!

Using it on a K6-III system with a Voodoo 3 PCI and even though the BIOS supports the K6-III the especially the auto detected wrote combining feature helped me get much more performance out of it. Really looking forward to future versions!

Btw there's an experimental 1.06 version available here: https://github.com/oerg866/k6init/releases/tag/v1.06 that scans both VESA LFB modes via the /pci parameter. Although it locks up my Voodoo 3 PCI system atm it might work on others. [Edit] With an updated version it's now working, thanks for the great support @oerg866!

Reply 42 of 76, by Gmlb256

User metadata
Rank l33t
Rank
l33t

Excellent!

Despite my K6-2+ computer being inactive at this point, better MTRR control makes K6INIT very nearly the DOS equivalent of CTU. The only thing missing now is an option to toggle the data prefetch. 😁

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce2 GTS 32 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 43 of 76, by analog_programmer

User metadata
Rank Oldbie
Rank
Oldbie

I just tried K6INIT.EXE version 1.06 with AMD K6-2 CXT core CPU. Seem to work very good, L1 cache disabling/enabling also works fine but... There's always a but. Here are some notes:

1) The tool invokes the message "There is an error in your config.sys line _" in DOS, when used from within CONFIG.SYS and there are some errors (maybe also warnings) - for example when videocard doesn't support LFBs. I'm not sure if this is due to error codes used for warining/error handling.

2) Ok, there's /LFB command line option, but there's no opposite /NOLFB (unlike the /MTRR and /NOMTRR). This also applies for /PCI and /VGA switches.

3) Why there's no short /? switch equivalent to /HELP ?

I managed to intentionally to "break" my K6-2 CXT system a couple of times trying to set CPU multiplier by the tool. On first try it reports errors (as expected) and on the second attempt the system always hangs with no option for "soft" reboot. I think it will be much more suitable if the tool first checks if CPU ID is for K6-2+ or K6-III+and if it's not just to ignore /MULTI:x.y switch instead of trying to set a multiplier on CPUs that don't support this option.

P.S. I'-m gonna test the tool with K6-2+ CPU soon and I'm sure it will work fine just like with K6-2 Chomper Extended.

Last edited by analog_programmer on 2024-10-07, 06:28. Edited 3 times in total.

The word Idiot refers to a person with many ideas, especially stupid and harmful ideas.
This world goes south since everything's run by financiers and economists.
This isn't voice chat, yet some people overusing online communications talk and hear voices.

Reply 44 of 76, by marxveix

User metadata
Rank Member
Rank
Member

I have not used K6INIT yet. I have AMD K6-II+(its a AMD K6-III+ if unlocked) .
Most of the time i use Win9x at my Retro K6-II+ at the moment, but i return
to DOS gaming also, Thank you for this amd dos tool.

30+ MiniGL/OpenGL Win9x files for all Rage3 cards: Re: ATi RagePro OpenGL files

Reply 45 of 76, by Oerg866

User metadata
Rank Member
Rank
Member
analog_programmer wrote on 2024-10-05, 19:45:

1) The tool invokes the message "There is an error in your config.sys line _" in DOS, when used from within CONFIG.SYS and there are some errors (maybe also warnings) - for example when videocard doesn't support LFBs. I'm not sure if this is due to error codes used for warining/error handling.

Cannot reproduce this with multiple test systems. Is this DOS 7.xx?

analog_programmer wrote on 2024-10-05, 19:45:

2) Ok, there's /LFB command line option, but there's no opposite /NOLFB (unlike the /MTRR and /NOMTRR). This also applies for /PCI and /VGA switches.

LFBs get added to MTRRs so /NOMTRR is what you're looking for. Frame buffer scans only happen in /auto or if explicitly asked for anyway.

analog_programmer wrote on 2024-10-05, 19:45:

3) Why there's no short /? switch equivalent to /HELP ?

No reason, I can add it

analog_programmer wrote on 2024-10-05, 19:45:

I managed to intentionally to "break" my K6-2 CTX system a couple of times trying to set CPU multiplier by the tool. On first try it reports errors (as expected) and on the second attempt the system always hangs with no option for "soft" reboot. I think it will be much more suitable if the tool first checks if CPU ID is for K6-2+ or K6-III+and if it's not just to ignore /MULTI:x.y switch instead of trying to set a multiplier on CPUs that don't support this option.

Good point, the check for this is missing, I will add it

The only thing missing now is an option to toggle the data prefetch. 😁

Good idea! I will add it also!

Reply 46 of 76, by analog_programmer

User metadata
Rank Oldbie
Rank
Oldbie
Oerg866 wrote on 2024-10-05, 21:01:
analog_programmer wrote on 2024-10-05, 19:45:

1) The tool invokes the message "There is an error in your config.sys line _" in DOS, when used from within CONFIG.SYS and there are some errors (maybe also warnings) - for example when videocard doesn't support LFBs. I'm not sure if this is due to error codes used for warining/error handling.

Cannot reproduce this with multiple test systems. Is this DOS 7.xx?

Yes, it happens with DOS 7.1 from win98SE.

Oerg866 wrote on 2024-10-05, 21:01:
analog_programmer wrote on 2024-10-05, 19:45:

2) Ok, there's /LFB command line option, but there's no opposite /NOLFB (unlike the /MTRR and /NOMTRR). This also applies for /PCI and /VGA switches.

LFBs get added to MTRRs so /NOMTRR is what you're looking for. Frame buffer scans only happen in /auto or if explicitly asked for anyway.

Ok, I'll try again K6INIT with /AUTO /NOMTRR switches in combination with my old S3 ViRGE to see what kind of initialization it will be.

Oerg866 wrote on 2024-10-05, 21:01:
analog_programmer wrote on 2024-10-05, 19:45:

3) Why there's no short /? switch equivalent to /HELP ?

No reason, I can add it

Thanks.

Oerg866 wrote on 2024-10-05, 21:01:
analog_programmer wrote on 2024-10-05, 19:45:

I managed to intentionally to "break" my K6-2 CXT system a couple of times trying to set CPU multiplier by the tool. On first try it reports errors (as expected) and on the second attempt the system always hangs with no option for "soft" reboot. I think it will be much more suitable if the tool first checks if CPU ID is for K6-2+ or K6-III+and if it's not just to ignore /MULTI:x.y switch instead of trying to set a multiplier on CPUs that don't support this option.

Good point, the check for this is missing, I will add it

Great!

Last edited by analog_programmer on 2024-10-07, 06:29. Edited 1 time in total.

The word Idiot refers to a person with many ideas, especially stupid and harmful ideas.
This world goes south since everything's run by financiers and economists.
This isn't voice chat, yet some people overusing online communications talk and hear voices.

Reply 47 of 76, by Oerg866

User metadata
Rank Member
Rank
Member

k6init_bars.png?raw=true

  • Changed parameter usage help parameter to /?
  • Fixed Set Multiplier not working at all
  • Fixed unsupported Multiplier settings not being rejected
  • Fixed Multiplier 6.5x not being rejected
  • Set Multiplier now gets blocked on non-PLUS CPUs
  • Added feature to enable/disable Data Prefetch
  • Program now detects Windows and refuses to run on it
  • Improved error handling for PCI/AGP BAR scanning
  • Added feature to list all PCI/AGP BARs

https://github.com/oerg866/k6init/releases/tag/1.1

Reply 48 of 76, by Disruptor

User metadata
Rank Oldbie
Rank
Oldbie

Great job!

Do you intend to support K6 too or is it too different in programming?

Reply 49 of 76, by analog_programmer

User metadata
Rank Oldbie
Rank
Oldbie

I was asking about /NOLFB switch because of this messages:

The attachment K6INIT.JPG is no longer available

The /AUTO switch can't be combined with /NOMTRR switch, but at least "K6INIT /STATUS" reports one and the same after "K6INIT /AUTO" or "K6INIT /NOMTRR".

I also tried the last version (the tool reports itself as version 1.08, but in github it's ver. 1.1 ??). It seems to work even better according to fixes/features list. Good job!

P.S. /? option is fine, but I didn't meant to replace /HELP, just /? = /HELP 😀

P.S.2: I don't know if data prefetch option can be turned off after it's once set to on. My CXT core system freezes after initial initialization (in CONFIG.SYS with "K6INIT /AUTO") and later trying to manually set data prefetch to off by "K6INIT /PREFETCH:0".

Last edited by analog_programmer on 2024-10-07, 06:29. Edited 1 time in total.

The word Idiot refers to a person with many ideas, especially stupid and harmful ideas.
This world goes south since everything's run by financiers and economists.
This isn't voice chat, yet some people overusing online communications talk and hear voices.

Reply 50 of 76, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++
Disruptor wrote on 2024-10-06, 01:40:

Great job!

Do you intend to support K6 too or is it too different in programming?

Or too light in features... some of the very late 2.4V 266 and 300 parts might have something though.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 51 of 76, by Oerg866

User metadata
Rank Member
Rank
Member
analog_programmer wrote on 2024-10-06, 08:21:
I was asking about /NOLFB switch because of this messages: […]
Show full quote

I was asking about /NOLFB switch because of this messages:

The attachment K6INIT.JPG is no longer available

The /AUTO switch can't be combined with /NOMTRR switch, but at least "K6INIT /STATUS" reports one and the same after "K6INIT /AUTO" or "K6INIT /NOMTRR".

I also tried the last version (the tool reports itself as version 1.08, but in github it's ver. 1.1 ??). It seems to work even better according to fixes/features list. Good job!

P.S. /? option is fine, but I didn't meant to replace /HELP, just /? = /HELP 😀

P.S.2: I don't know if data prefetch option can be turned off after it's once set to on. My CTX core system freezes after initial initialization (in CONFIG.SYS with "K6INIT /AUTO") and later trying to manually set data prefetch to off by "K6INIT /PREFETCH:0".

Hmmm I should rework that logic and add skip flags for those....

As for ptefetch I can't find reliable information which CPUs support it and how they do, I just followed K6-2E+ datasheet 🤔

In any case the error can be ignored as it's not critical and everything that's successful will still be carried out correctly I think

Reply 52 of 76, by analog_programmer

User metadata
Rank Oldbie
Rank
Oldbie

Thanks for your responsiveness, Oerg866. I think your K6-2(+)/III(+) CPU setting tool is the best one out there, but unfortunately I can't participate in the project with anything but tests and ideas.

I have three working AMD K6 CPUs: K6-2+/500ACZ (this one covers K6-III and K6-III+), K6-2/450ADK (CXT core, something like K6-III without L2 cache) and K6-233ANR (350 nm, I think this one is out of the project's scope). Currently I'm focused on tests with K6-2 CXT, because I think most of the people will jump directly to K6-2+ or K6-III(+) CPUs because of L2 cache and multiplier setting options.

P.S. Ok, looking through my collection with tools for old CPUs and some documentation I found that data prefetch must be supported by all K6-2, K6-III and K6-2+/III+ CPUs.

As for the K6 CPUs the only option which will be of use from the tool is for L1 cache enabling/disabling.

The word Idiot refers to a person with many ideas, especially stupid and harmful ideas.
This world goes south since everything's run by financiers and economists.
This isn't voice chat, yet some people overusing online communications talk and hear voices.

Reply 53 of 76, by Oerg866

User metadata
Rank Member
Rank
Member

One can use CPUCACHE for that one, so that's out of scope for this tool, I think

As for the wrong version, I accidentally attached the wrong file to the github release, this is now fixed 😀

Thank you for checking the documentation!

Reply 55 of 76, by SteveC

User metadata
Rank Member
Rank
Member

Just tried this on my Aptiva K6-2 450 and it is great - doubles the Quake and PCPlayer 640x480 performance! It gives some errors though so will need to experiment a bit. /auto only worked on a clean DOS mode, with sound drivers etc it crashes for me.
If this is of any interest, this is what I see when I run it...

YouTube: https://www.youtube.com/c/StevesTechShed
Twitter: https://twitter.com/SteveTechShed

Reply 56 of 76, by Chain-Q

User metadata
Rank Newbie
Rank
Newbie

First of all thanks for doing this tool, I'm blown away by the performance increase I'm seeing, from most graphics stuff using the LFB. (Demos!)

However, I also have some problems. At least with version 1.1, on my system, I can't seem to be able to load it from CONFIG.SYS. I get a message: "Keep C fatal error: Unable to fixup segment references." (see the attachment; direct capture from the VGA out) and then the system is locked up. Same before/after HIMEM.SYS is loaded. Also when EMM386 is loaded, K6INIT dies immediately after pressing ENTER at the prompt. No messages. Even if I just do K6INIT /?, the executable just stops. Note that the two things are independent from each other. K6INIT dies from CONFIG.SYS, even if EMM386 is not loaded.

I'm using the 1.1 release binary from GitHub. I use PC-DOS 7.01 (a.k.a. PC-DOS 2000). But as far as I know, this should be just MS-DOS with some tweaking/tuning from IBM, so the compatibility should be very high. My system is a K6-III+/400@550, AGP Riva TNT 1, Acorp 5ALI61 mainboard, 512MB RAM.

Do anyone else see similar problems, or it's just my setup, as usual?

AMD K6-III+/400@550, 512MB, Diamond Stealth V550, Gravis Ultrasound MAX 1MB, Sound Blaster AWE64
C= Amiga 2000, Motorola 68060@50, 128MB, Cirrus Logic 5446A 4MB, ESS 1688 + TI 486sxlc2@50 8MB
Mastodon

Reply 57 of 76, by analog_programmer

User metadata
Rank Oldbie
Rank
Oldbie
Chain-Q wrote on 2025-01-04, 12:38:

... or it's just my setup, as usual?

Did you tried K6INIT tool with less than 512 MB of RAM (for example with 256 MB RAM), if the mobo uses Award BIOS?

The word Idiot refers to a person with many ideas, especially stupid and harmful ideas.
This world goes south since everything's run by financiers and economists.
This isn't voice chat, yet some people overusing online communications talk and hear voices.

Reply 58 of 76, by Chain-Q

User metadata
Rank Newbie
Rank
Newbie

I tried now with all sorts of RAM modules from 16MB to 128MB, one or two combinations, the behavior is the same.

AMD K6-III+/400@550, 512MB, Diamond Stealth V550, Gravis Ultrasound MAX 1MB, Sound Blaster AWE64
C= Amiga 2000, Motorola 68060@50, 128MB, Cirrus Logic 5446A 4MB, ESS 1688 + TI 486sxlc2@50 8MB
Mastodon

Reply 59 of 76, by Geoman

User metadata
Rank Newbie
Rank
Newbie

IBM Aptiva 2168 / AMD K6 III+ ATZ / IBM PC DOS 7.0 gives me, while using DEVICE=K6INIT.EXE /auto in config.sys

Keep C fatal error: Unable to fixup segment references

running as an executable works, though I get a partial error:


ERROR | You are trying to configure too many MTRRs, maximum is 2!
ERROR | PCI/AGP FB detection failed! Skipping...
ERROR | Preparing automatic configuration

SUMMARY | some actions failed

after that, the computer locks up.

IBM Aptiva 2168-931