VOGONS

Common searches


First post, by carlostex

User metadata
Rank l33t
Rank
l33t

Hi,

i made a small program to effectively change the port for the MPU-401 on Lost Vikings. Doing so in the SETUP program actually does nothing, so my program actually patches the Miles driver inside the big DATA.DAT file.

Take notice that when you change the port it will also change for MT-32. If you select MT-32 on the setup it will try to run the game in whatever address was patched on the Miles driver. So use the program to put it back to 330h.

Filename
LVPORT.exe
File size
1.86 KiB
Downloads
19 downloads
File license
Public domain

EDIT: New version, allows for user input rather than choice of ports:

Filename
lvmpu.exe
File size
1.95 KiB
Downloads
3 downloads
File license
Public domain
Last edited by carlostex on 2021-02-18, 00:57. Edited 2 times in total.

Reply 2 of 15, by carlostex

User metadata
Rank l33t
Rank
l33t

By the way, i forgot to add that the DATA.DAT file must be 1.570.544 bytes long, otherwise this patch might not work and actually corrupt your file. I'll improve the patch when i have time.

Reply 7 of 15, by Tempus

User metadata
Rank Newbie
Rank
Newbie

Hey, Carlostex, would you be willing to share the source for this so it can be used for other cards using other addresses too? I have this problem using an LAPC-I on 330, but I want to use an SCC-1A on 336.

Reply 8 of 15, by 8bitbubsy

User metadata
Rank Member
Rank
Member

So me and Tempus got this to work with port 336, but we had to hex edit DATA.DAT because LVPORT.EXE can't change the last nybble of the output address.
Do you want to change it so that you can? Instead of using a switch case for the 0..9 numbers like you are doing in your program, you could just allow an input of two digits, and then convert that to hex and use it for the patching.

P3 rig:
- ASUS CUSL2 w/ i815 BIOS Tweaker
- Pin-modded Tualatin 1.26GHz 512kB @ 1358MHz
- 512MB SDRAM @ 143MHz CL2
- PCI SATA w/ 128GB Samsung SSD
- ATi Radeon 9600 XT 128MB (APG 4x, AGP clk @ ~71MHz)
- Creative Sound Blaster Live!

Reply 9 of 15, by carlostex

User metadata
Rank l33t
Rank
l33t

I don't mind making it more robust. Granted, the SCC-1 is probably the only card that has those weird ports. I'll update the program with user input.

EDIT: In the meantime here's a revised version to accomodate you for port 336h.

Filename
LVPORT.exe
File size
1.87 KiB
Downloads
1 download
File license
Fair use/fair dealing exception
Last edited by carlostex on 2021-02-16, 21:27. Edited 1 time in total.

Reply 11 of 15, by carlostex

User metadata
Rank l33t
Rank
l33t
Tempus wrote on 2021-02-16, 20:50:

I uploaded the diagram for the address-switches

I'm aware of the ports the SCC-1 uses, Tyrian is a game that supports all those on purpose, because of an SCC-1. I've made a revised version of the program real fast to make port 336h available. I've uploaded it on my previous post. This program was coded in assembly, so i'll make a better version wit huser input in the future.

Reply 13 of 15, by 8bitbubsy

User metadata
Rank Member
Rank
Member

I wrote an 8086 asm version which allows you to enter the two digits of the address:
https://16-bits.org/etc/lvmusprt.zip

Please note that I am new to x86 asm coding, and as such the included code is not the best.
EDIT: Can this port have A..F digits in it? If so, I need A..F hex range checking as well.
EDIT2: Added A..F/a..f range.

Last edited by 8bitbubsy on 2021-02-24, 12:02. Edited 1 time in total.

P3 rig:
- ASUS CUSL2 w/ i815 BIOS Tweaker
- Pin-modded Tualatin 1.26GHz 512kB @ 1358MHz
- 512MB SDRAM @ 143MHz CL2
- PCI SATA w/ 128GB Samsung SSD
- ATi Radeon 9600 XT 128MB (APG 4x, AGP clk @ ~71MHz)
- Creative Sound Blaster Live!

Reply 14 of 15, by carlostex

User metadata
Rank l33t
Rank
l33t
8bitbubsy wrote on 2021-02-16, 22:20:
I wrote an 8086 asm version which allows you to enter the two digits of the address: https://16-bits.org/etc/lvmusprt.zip […]
Show full quote

I wrote an 8086 asm version which allows you to enter the two digits of the address:
https://16-bits.org/etc/lvmusprt.zip

Please note that I am new to x86 asm coding, and as such the included code is not the best.
EDIT: Can this port have A..F digits in it? If so, I need A..F hex range checking as well.

I don't really think there's need to check for A to F digits, all cards i know mostly offer ports with number digits. The Audiotrix Pro does have an option to put on 3B0, or something like that but it also offers 330 and 370 so i don't see the need.

EDIT: I'll update a revised version of my tool later, that does conversion for the digits as well. Just for peace of mind.

Reply 15 of 15, by carlostex

User metadata
Rank l33t
Rank
l33t

Ok new version now available, now user can type port instead of a pre made selection. The old version is still available if someone prefers the older one.

This new version also does A-F hex digits, for those cards that have options for weird ports.