VOGONS


PADS Perform + DosBox and ANSIPlus

Topic actions

Reply 20 of 66, by MiniMax

User metadata
Rank Moderator
Rank
Moderator
Plan9FOS wrote:

3. HAL9000: how does one load MSDOS v6.22 in DOSBox?

So, would I be using it like Virtual PC where it's just an empty machine and I have to load an OS? VPC inherently tries to boot when the VM starts so you can boot from the floppy or CD and load the OS. How do I do the equivalent in DOSBox?

I am no expert on this booting-DOSBOX-with-real-DOS, but basically you have to create an image of a DOS system-diskette. Start DOSBox, mount the directory where the image is located, and then use the BOOT command to force DOSBox to reboot from the DOS image.

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 21 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

This is just a technical update to the first post of this topic:

Japheth who wrote the HX DOS-Extender answered back with why DPMI v1.0 hosts such as HX DOS-Extender and DPMIONE won't load in XP when trying to get v1.0 support (mainly INT31h Function AX=0509h).

Japheth wrote:

"HDPMI32 needs to run in ring 0, and WinXP/NTVDM won't allow that.

No. With NTVDM, the only solution might be a VDD (Win32 dll running in the NTVDM process) which extends the int 31h API. But since NTVDM is dying and being replaced by virtualizers ..."

(NTVDM is the NT Virtual DOS Machine).

This seems to confirm that PADS Perform DOS will never run natively in XP and, therefore, the necessity of DOXBox to run in XP.

Reply 22 of 66, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

How to boot OSes in DOSBox:
Sample usage of a harddisc image in DOSBOX

About the numlock problem:
I have a DOS diagnostic utility that displays the numlock key as stuck when numlock is on, until you turn it off. Might be a hint.

1+1=10

Reply 23 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

Thanks for the link on booting OSes.

Luckily, my problem turned out to be pilot error (that would be me). One of the great things about DOSBox is that it uses the .conf file from the Start in: directory. It hadn't occurred to me it would do that for mapper.txt as well! I have my main shortcut set to start in C:\PADS and the program starts automatically. Then I have another shortcut which goes to the C:\ prompt for doing various things like configuration, but it starts in the DOSBox directory. I knew to cd to PADS for the .conf, but I never thought about it for the mapper. So I was configuring a mapper file in the DOSBox directory that never got used and didn't have one in the PADS directory so the map was the default! I set up a mapper file in C:\PADS to have both number and navigation functions for the numpad and I've got both functions in PADS Perform now synced to the proper Num Lock state.

There are 2 glitches:

1. When I start PADS, sometimes I have to toggle the Num Lock a couple of times to get the navigation functions working. Sometimes the num pad comes up working right away, no toggle needed.

2. The worst thing is the regular navigation keys, the inverted-T cursors and the Insert-Page Down keys, act as number keys when Num Lock is on. They provide the normal navigation functions when Num Lock is off. For example: the inverted-T cursors generate 2, 4, 6, and 8 when the Num Lock is on.

I checked the mapper.txt file and there is only one code per key for the regular nav keys. There are 2 codes for each numpad key which is what I expected.
I tried with usescancodes=true and false, but there's no difference.
The relevant lines from the mapper file are listed below:

key_insert "key 277"
key_home "key 278"
key_pageup "key 280"
key_delete "key 127"
key_end "key 279"
key_pagedown "key 281"
key_up "key 273"
key_left "key 276"
key_down "key 274"
key_right "key 275"

key_numlock "key 300"
key_kp_divide "key 267"
key_kp_multiply "key 268"
key_kp_minus "key 269"
key_kp_7 "key 278" "key 263"
key_kp_8 "key 273" "key 264"
key_kp_9 "key 280" "key 265"

key_kp_plus "key 270"
key_kp_4 "key 276" "key 260"
key_kp_5 "key 261"
key_kp_6 "key 275" "key 262"
key_kp_1 "key 279" "key 257"
key_kp_2 "key 274" "key 258"
key_kp_3 "key 281" "key 259"

key_kp_enter "key 271"
key_kp_0 "key 277" "key 256"
key_kp_period "key 127" "key 266"

Any idea why that happens and can I do anything about it?
I'd really like to leave the Num Lock on so that the numpad keys are numbers and the regular nav keys are for navigation.
(Without the nav codes assigned to the numpad, none of the nav key functions work in PADS, whether numpad or regular).

Thanks

Reply 24 of 66, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

hmm that doesn't very logical. the 2 key thing.
Maybe I'm confused
one set is for the T-reverse and that 6 block on top of it. the second set is for the numerickeyboard. Makes no sense to have the same key twice there

Water flows down the stream
How to ask questions the smart way!

Reply 26 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

wd:

I tried the official SourceForge v0.7 with it's .conf, sdl.dll, and most other files (03/02/2007).
I set ems=false and added my autoexec lines to start PADS.
I had to set PADS to VGA 640x480.

Without the mapper file (everything default), it acted the same as HAL9000's "CAD Edition" without the mapper file.
With the mapper file, it acted the same as HAL9000's "CAD Edition" with the mapper file.

(Two of Gulikoza's (May and July) and one of ykhwong's (June) acted slightly different. See below).

Qbix:

The mapper made the lines I posted above. I just copied them and bolded the important ones. I'll explain what I did in the mapper after some background info:

PADS supported the XT keyboard. The DOS version never added support for the 101-key keyboard, so the regular nav keys Insert-Page Down don't do anything in an MSDOS or Win 98 setup. The inverted-T cursors cause the screen cursor to scroll slowly and smoothly for small motions.

The very important functions for the numeric pad are as follows:

PADS-PCB provides a complete set of window control commands, based on
the numeric keypad located to the right of the main keyboard. (Note:
Your keyboard must have NUM LOCK turned off in order to access the
Windowing Keys.) The function of each key is as follows:

Num 1: Redraw the screen
Num 2: Move the window down
Num 3: Zoom out
Num 4: Move the window left
Num 6: Move the window right
Num 7: Show the entire board
Num 8: Move the window up
Num 9: Zoom in about the cursor
Num 0: Reposition window with cursor in center
Num . : Start creating a window box

With Num Lock on, the numeric keypad should generate numbers as expected rather than the windowing functions.

OK, here's what happens with HAL9000's CAD Edition and no mapper file:

1. When Num Lock is on, the number keys work. But when Num Lock is off; 1,3, 7, and 9 do nothing and the cursor keys (2, 4, 6, and 8) move the screen cursor in a slow smooth motion instead of the normal function which is to pan about a third of the screen. In fact, the numpad cursor keys are doing what the inverted-T cursor keys normally do.

The number pad won't ever start working for the nav functions. I get numbers or nothing. The numpad navigation functions never work with this build if there's no mapper file.

(With 2 versions of Gulikoza's and 1 of ykhwong's, the numeric pad is quirky. I usually have to turn the Num Lock key on and off several times and use the left or right cursor key (4/6) to move the screen cursor a ways and then toggle the Num Lock again. On ykhwong's, when it starts working, the Num Lock will be off as expected. On Gulikoza's, when it starts working, the Num Lock is on which is the opposite of what it should be).

2. It makes no difference if I start DOSBox with the Num Lock on or off.
But here is something strange: if I leave the program running and free the cursor by pressing the Windows key twice or Cntrl-F10, then make sure the Num Lock is ON, then click in the desktop or any other window, when I click back in my program to capture the cursor, the Num Lock is still on AND the numpad keys are all working as the windowing navigation functions should when the Num Lock is off! In other words, they are working properly, but they are doing what they should when the Num Lock is off even though the Num Lock is actually on. The bad thing is if I toggle the Num Lock even once, the numpad operation goes back to what I described in number 1.

So, I thought I should try the mapper. I exit PADS and go back to the DOSBox command prompt. At this point, sometimes I have to toggle the Num Lock to get it back in sync with the proper numpad function (numbers vs. nav.).
In the mapper I noticed that the numpad keys have only one thing bound to each. Example:
key_kp_7
Key [7]
I thought the Num Lock state or code was always read along with any numpad code so its proper function can be determined. But then I thought, maybe I'm wrong. Or maybe the XT keyboard did something different.
So, I thought I would add the nav code to each numpad key, . to 9, except 5.
I turned Num Lock off.
I highlighted the key, selected Add, and then pressed the corresponding physical key.
Ex.:
key_kp_7
Key [7]
Key home

I didn't add any codes to the regular nav keys (inv-T and Insert-Page Down).
I did add the Rt-Alt key to the Cap Mouse function so I can escape the window easily (same as VPC). And F10 is used to exit PADS, so I wanted to get away from it. One of the Windows keys seemed intuitive since mouse capture is really changing windows, but they weren't in the mapper.
(Request: could you add support for the two Windows keys in the mapper)?
I saved the mapper file and I'm ready to try it (making sure it's in the correct directory).

Here's what happens with HAL9000's CAD Edition and the mapper file:

The numeric keypad works as it should, generating numbers when Num Lock is on and nav. functions when Num Lock is off. However, many times the Num Lock must be toggled once or twice to get it in sync with the actual state or even to get the nav functions working. Once in sync, it stays unless I escape from the window, click in another window, and recapture in PADS. Then it may get out of sync again until toggled once or twice.

Here's the oddity:

The regular navigation keys, the inverted-T cursors and the Insert-Page Down keys, act as number keys when Num Lock is on. They provide the normal navigation functions when Num Lock is off. For example: the inverted-T cursors generate 2, 4, 6, and 8 when the Num Lock is on.
That shouldn't happen.

Even after I exit PADS and return to the DOSBox command prompt, this behavior continues. If Num Lock is on, pressing an inv-T cursor generates a number. So does Insert-Page Down. If Num Lock is turned off, they function normally.

So what is going on? Why do the regular nav. keys generate numbers when Num Lock is on? I only added an additional code to the numpad keys.

Since PADS didn't use the regular Insert-Page Down, I can keep Num Lock off in PADS and get the nav. functions on the numpad as is normal. If I want the Num Lock LED to be correct, I toggle the Num Lock key a couple of times and it's in sync. I just need to avoid using the inv-T cursors when Num Lock is on so I lose my small motion cursors for that state. So it's liveable but you might want to see what's happening in case it affects anyone else where they can't work around it.

I know this is long and I hope you can follow the steps I went through.

Thanks

Reply 27 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

vicg,

Good news on the video. Vasyl pointed out that even though the ET4000 is not in the list as it is in PADS Perform, the Orchid ProDesigner II is and it was a Tseng Labs ET4000 based card. So when you run PINSTALL.EXE, for the Graphics Device select:

22. 1024x768 Orchid ProDesigner II VGA

Set DOSBox for 1024x768 for both fullresolution and windowresolution.

You'll find you can run at 1024x768 in a window or full screen.

Use the DOSBox 'CAD Edition' from HAL9000 at

http://home.arcor.de/h-a-l-9000/

It has Vasyl's SVGA code, the color palette fixed so you won't need ANSIPlus, and of course the Parallel Port code so you can print from in PADS-PCB.
(Don't forget you'll need to get PortTalk v2.2 from Beyond Logic for printing
http://www.beyondlogic.org/porttalk/porttalk.htm).

Any news yet on the EMS memory problem?

Thanks to Vasyl for the help.

Reply 28 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

Forgot to add this in the previous post.

To load PortTalk v2.2:
Just copy porttalk.sys to C:\WINDOWS\system32\drivers, double click on the porttalk.reg file to load it, reboot, and HAL9000's CAD Edition does the rest. With HAL9000's CAD Edition, you shouldn't have to use AllowIo.exe.

In dosbox.conf's [parallel] section, put:
parallel1=reallpt directlpt:378

DOSBox's Status Window should report something like:
The port at 0x378 was detected as ECP port.

Reply 29 of 66, by unobtanium

User metadata
Rank Newbie
Rank
Newbie

Looking for someone to take Pads Perform *.job files and translate them to *.asc files which I can import into my Protel V1.61 (also DOS era program).
Original designer passed away and I am picking up loose ends for owner of
files.

Reply 30 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

First let me emphasize, I have never used any version of Protel so I can only help with the PADS side of things.

To generate a .asc file in PADS Perform DOS v6.0.1:

Start PADS Perform, use this sequence -

In/Out (F1)
Job In (F1)
Accept (F1)
Directory Window pops up
Select .JOB file from list
Board loads
AsciiOut (F4)

ASCII OUTPUT OPTIONS screen

Output Format:

Options are -
Basic Units
Current Units
PADS-2000-V4
PADS-PERFORM

Defaults are -
Current Units
PADS-PERFORM

(Try both PADS-2000-V4 and PADS-PERFORM)

Sections to Output:
Select All

Convert mitres to route segments: No
Include Part Attributes from Library: No

Output Filename: pcbname.asc

(Use different names for PADS-2000-V4 and PADS-PERFORM, ex.:
pcbnam2K.asc and pcbnampp.asc.
Keep the name in the DOS 8.3 format, no long filenames).

Select OK button
File will be written in C:\PADS\FILES directory

If you select PADS-2000-V4 and your .JOB file is made with PADS Perform and uses certain features, you will get a warning window. PADS Perform will create an error file .err listing the types of items it couldn't convert, as well as the .asc file.
For ex.:
Warning: Can't find BURIEDVIA in database. Using default.
Warning: Can't find MICROVIA in database. Using default.
Warning: STANDARDVIA converted to PADS2000-V4 STANDARDVIA
Warning: 20/40 converted to PADS2000-V4 STANDARDVIA
Writing PADS-2000-V4-MILS ASCII file.
** JOB CAN'T BE COMPLETELY TRANSLATED **

In this case, you will have to either:
1. change the design in PADS and convert the Perform-only items or
2. go through the ASCII file and manually fix the listed items in the design.
If you're not confident about knowing the details, I wouldn't recommend this method. It's only a last resort.

Hopefully, the PADS Perform format will work with your version of Protel. If not, the best method would be to go through the PADS-PERFORM format ASCII file and manually edit it until you get it into the Protel format. It does involve some work, but at least it's an ASCII file and can be done with a simple editor such as Notepad.

Or look for a third party translator that can handle the older formats.

I don't know Protel at all, but I would bet that you are going to have to use the PADS-PERFORM ASCII format and then manually change the ASCII file to get it into the Protel format. But that's just my guess.

Good Luck

Reply 31 of 66, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I haven't been able to reproduce the ems problem btw.
I don't use vasyls patch though. So maybe it only shows on higher resolutions (how d you set that ?)

Water flows down the stream
How to ask questions the smart way!

Reply 32 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

PINSTALL.EXE is the program used to install and configure PADS. It is not very intuitive. Also, it only uses the cursor keys, not the mouse.

Run it to configure the Graphic Devices and the LARGE Option to use EMS memory.
For Graphic Devices use:
2. 640x480 IBM VGA Graphics Adapter
23. 800x600 Paradise VGA Card (pvga1a)
21. 800x600 Orchid ProDesigner II VGA (et4000)
22. 1024x768 Orchid ProDesigner II VGA (et4000)

To configure PADS-PCB:

From the C:\PADS> prompt:

Type pinstall (PINSTALL.EXE)

select HARDWARE SETUP, press F1
select PADS PCB, press F1

Specify the DOS drive > C
Specify the software drive > C
Is this correct? ( Yes / No ) Y

GRAPHICS DEVICE SETUP

select one of

2. 640x480 IBM VGA Graphics Adapter
19. 800x600 Orchid ProDesigner VGA (*) (ET3000)
21. 800x600 Orchid ProDesigner II VGA (ET4000)
22. 1024x768 Orchid ProDesigner II VGA (ET4000)
23. 800x600 Paradise VGA Card
25. 800x600 STB VGA Extra/EM (*) (ET3000)
27. 800x600 Toucan VGA (*) (ET3000)
29. 800x600 Tseng Labs VGA (*) (ET3000)

(* are supposed to be the same)

press F1

(the rest of the output devices are not critical)

DOT-MATRIX PRINTER SETUP
EPSON-LQ-800, press F1

LASER PRINTER SETUP
HP LaserJet II, press F1

PEN PLOTTER SETUP
HP-7580, press F1

PHOTO-PLOTTER SETUP
GERBER, press F1

DEVICE STATUS
N COM2
Y COM2
Y PRN
Y PRN
press F1

Now set EMS on or off by installing or removing the PCB-LARGE option.
If the PCB-LARGE option is installed, it asks if you want to remove it.
If the PCB-LARGE option is removed, it asks if you want to install it.
Read the question carefully and press N or Y as appropriate.

Redirect error messages to the printer ? ( Yes / No ) > N
OK to modify AUTOEXEC.BAT ? ( Yes / No ) > N
OK to modify CONFIG.SYS ? ( Yes / No ) > N

Hardware Setup Has Been Completed.
press F1

At HARDWARE SETUP, press Esc

DO You Really Want To Exit ? ( Yes / No )
press Y

To run PADS-PCB:

Make a shortcut in the Desktop to start DOSBox with the shortcut property Start in: set to C:\PADS.

Copy the dosbox.conf file to C:\PADS.
For the PCB-LARGE option to work, set the [dos] section to

xms=true
ems=true
umb=true

and set the [autoexec] section to leave you at the C:\PADS> prompt:

mount c c:\
path=C:\BAT;c:\pads;c:\pads\files;c:\pads\cam;
C:
cd C:\PADS
rem C:\PADS\PCB.EXE /S

Use the shortcut to start DOSBox and leave you at the C:\PADS> prompt.

Type PCB

and PADS should come up with the DEFAULTS.PAD and DEVICES.DAT files setting the characteristics.
(After PADS-PCB is working properly, remove the "rem " part of the last [autoexec] line so that PADS starts automatically).

The PCB design area is empty and black except for a grid.
The numbers along the lower left side refer to the function keys, so 1 is F1 etc.
There is a status/entry line at the bottom.

Here is how the very important numeric pad is used to navigate the PCB area when a board is loaded:

PADS-PCB provides a complete set of window control commands, based on
the numeric keypad located to the right of the main keyboard. (Note:
Your keyboard must have NUM LOCK turned off in order to access the
Windowing Keys.) The function of each key is as follows:

Num 1: Redraw the screen
Num 2: Move the window down
Num 3: Zoom out
Num 4: Move the window left
Num 6: Move the window right
Num 7: Show the entire board
Num 8: Move the window up
Num 9: Zoom in about the cursor
Num 0: Reposition window with cursor in center
Num . : Start creating a window box

With Num Lock on, the numeric keypad should generate numbers as expected rather than the windowing functions.

The Right-Alt key is mapped to the Cap Mouse function (like Virtual PC) so it's easy to escape from the window.

There are problems getting the windowing functions when Num Lock is off which is the main reason for the mapper.txt file. Even with it, you should toggle the Num Lock key 3 or 4 times when you first start PADS. This should get the windowing functions working and synced to the LED.

The PCB files end in .JOB and are in the C:\PADS\FILES directory.
To load a PCB:
capture the cursor first,
click on In/Out, click on Job In,
type the name of one of the .JOB files, no path or extension is needed,
Ex.: demo or demo1 or practice
(practice sets the background to blue, it's not clear why)
just type, and the name will appear in the bottom status/entry line, no need to click on it first,
after you type the name, press enter,
wait for the PCB to load.

To exit, press F10 until you see "!!Make sure you saved JOB to Disk!! OK to exit Program Y/N?" in the status/entry line,
press Y to exit or N to stay in PADS.

Exiting will leave you back at the C:\PADS> prompt.

Attachments

  • Filename
    mapper.zip
    File size
    962 Bytes
    Downloads
    412 downloads
    File comment
    mapper.txt file for Numeric Keypad operation.
    File license
    Fair use/fair dealing exception
Last edited by Plan9FOS on 2007-09-10, 02:03. Edited 1 time in total.

Reply 34 of 66, by Plan9FOS

User metadata
Rank Newbie
Rank
Newbie

I've included the relevant PADS files to help recreate the environment with EMS memory problems with PADS-PCB. Note that before a PCB .JOB file is loaded, PADS-PCB will look and run great. A board must be loaded to see the problems.

Also, the PCB-LARGE Option must be installed. For confirmation of this, PADS-PCB will display the following before switching from text mode to the graphics screen:

1088K of expanded memory being used.

If the number is 640K or 384K, the PCB-LARGE Option is not installed and you won't see the problem.

Files included:

Demo1.job
Demo.job
Practice.job

PCB files from least to most likely to crash the screen or program when EMS LARGE Option is installed.

DEFAULTS.PAD
DEVICES.DAT

Configuration information saved when PINSTALL.EXE is run.
These are set to:
22. 1024x768 Orchid ProDesigner II VGA (ET4000)
and PCB-LARGE Option installed.

dosbox.conf
mapper.txt

DOSBox files placed in C:\PADS directory.

DOSBox0.70 HAL9000 CAD.lnk

Windows shortcut to start DOSBox with the Start in: set to C:\PADS.

Good Luck in finding the problem. Let me know if you need anything else.

Attachments

  • Filename
    PADSFile.zip
    File size
    46.55 KiB
    Downloads
    422 downloads
    File comment
    Relevant PADS files to help recreate the environment with EMS memory problems with PADS-PCB.
    File license
    Fair use/fair dealing exception

Reply 35 of 66, by vicg

User metadata
Rank Newbie
Rank
Newbie

Thanks Plan9FOS for setting all that out so concisely. I've just pm'd Qbix on the same subject but you have set it all out far more efficiently than me!
Thanks to everybody who is putting effort in on this on my behalf.

Reply 36 of 66, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I can reproduce the problem.
Step 1 is done. Now to find what goes wrong 😀

Water flows down the stream
How to ask questions the smart way!

Reply 39 of 66, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

For Paradise it looks like just the mode definition was missing, but even there the corruption and EMS error ocurred. The corruption looks the same but is a little lower down the screen.

1+1=10