short : RTG-aware PCWindow clone for Bridgeboards author : (Karoly Balogh) uploader : charlie amigaspirit hu (Karoly Balogh) type : misc/emu version : 1.3 requires : 68020+, RTG architecture : m68k-amigaos >= 3.1 Filetype : application/x-lzh-compressed Size : 67.25K Date : 30-Dec-18 Download : 💾
Viaduct ======= A PCWindow replacement for CBM Bridgeboards for Amiga computers. Why? ---- In short, I like crazy projects which don't make any sense whatsoever. Now that we got that out of the way, here are a few more reasons a bit longer: The old PCWindow software was designed for 1988-state Amiga computers. it doesn't play nice with fast CPUs and it doesn't support RTG systems properly. It was designed to also run with older Kickstarts and it best works with those. This is where Viaduct comes in, which was designed for "modern" Amiga, OS3.1, RTG and fast CPU expansion. If you have a fast, expanded classic Amiga system, there's a good chance Viaduct will work better for you than PCWindow ever did. Viaduct can also display the PC's Color output in a Workbench window, while PCWindow only supports this for Mono output only. Please note that this is an early version of Viaduct and doesn't support all features of PCWindow currently. Also, not all hardware combinations supported by janus.library and the CBM driver stack was tested. I wrote this software for my own needs, and to support things I found interesting. It's entirely possible that it won't fit your use case, or it doesn't support things you find important. In this case, please send a feature request or a bug report. Please also read the "Known Issues" section below. Requirements ------------ * a fast 68k CPU, like a 68040, 68060 or faster * an RTG card with Picasso96 or CyberGraphX drivers and at least 800x600 Workbench resolution in 256 colors for windowed mode, or a 640x480 screen in 256 colors for full screen mode * 16 free pens on the Workbench screen, if ran in windowed mode * a CBM Bridgeboard, like the A2286 or A2386sx * AmigaOS 3.1 or newer * properly installed and functioning janus.library and PC Tools Copyright & Contact ------------------- Copyright (c) 2018 Karoly Balogh Disclaimer ---------- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. This software is written with best intentions, and in the hope that it will be useful, but it is based on information obtained with reverse engineering of computer systems and hardware otherwise unsupported and end of life for decades. In other words, if this software sets your Amiga or PC Board on fire, I'm not responsible. Use at your own risk. Known Issues ------------ - Blinking is not supported in the various text modes. - The rendering engine supports a lot of options to improve usability, speed and rendering quality, but currenty the default settings are hardwired. There should be a settings GUI to change these options. - The code was not tested on an AGA screen and will probably break. I have no functioning AGA system with a PC card at this point, and no Windows system to try with WinUAE. - Running on an ECS screen is not supported at all (ECS doesn't have enough colors in high res). - Viaduct relies on a *FAST* hardware BltTemplate() implementation in the video driver, and will probably be very slow if it's missing. (Some RTG cards are known not to implement this.) - The keyboard emulation is still not complete. - Probably there is more. But I prefer to release early and often, rather than try to polish it forever and never get it out there... Future Plans ------------ - Fix other aspects of CGA and MDA emulation as far as the bridge hardware and performance allows. - Resizeable/scrollable main window - Settings GUI (possibly with MUI 3.8) - Clipboard support - GUI localization - Support tooltypes from the icon, in addition to ENV variables to set video mode and other settings - Performance improvements and bugfixes FAQ --- Q: But... Why? A: See above. Q: Did you really develop this in Free Pascal? A: Yes. Q: You seem to have a lot of free time. A: I don't have a lot of free time, and that wasn't a question. Q: What hardware did you use to develop Viaduct? A: I used my Amiga 2000, with a Blizzard 2060, PicassoIV and an A2386sx or A2286, running AmigaOS 3.1 (original Commodore version). I also used a MacBook with OS X to crosscompile with Free Pascal. Q: Will you open the source code later? A: This is possible, yes. The source is already on GitHub, in a private repository. But I want to keep it private until it reaches a "functional and complete enough" state. If you want to contribute before, please contact me in e-mail. Q: I want to contribute somehow, but I cannot code. Is there a way I can help? A: Send bugreports and test hardware combinations. Also, I'm looking for a nice 4 color and MagicWB icon for this project, for the main file itself, and the folder itself. Q: Could you support other PC Bridgeboards like the Vortex GoldenGate series? A: Theroetically yes. This depends on the availability of programming material for these cards or the effort needed to reverse engineer it. I have a GoldenGate 386sx, but I made no effort in researching it yet. Q: CGA or MDA sucks, so I'm using a VGA card in my Bridgeboard setup. Can Viaduct display the VGA card's picture in a Workbench window? A: No. Viaduct can only display the picture of the built-in emulated MDA or CGA display adapter. The Bridge hardware doesn't support promoting the picture of an external ISA card directly to the Amiga side. Q: CGA colors suck. Couldn't Viaduct emulate EGA or VGA? Or at least PCjr/Tandy? A: Adding emulation of hardware anything beyond the Bridge's hardware emulation can support is probably too complex and would be far too slow on the average RTG Amiga, therefore doesn't worth the effort, sadly. Q: So, how about CGA composite mode support at least? A: Yuck... :P Q: I see Viaduct trying to autodetect the Video mode, but it doesn't work for my setup. How can I fix it? A: In the PCPrefs application, make sure either MDA or CGA emulation, or both are enabled, and the default video configuration is set properly to an enabled emulation mode. Q: I see Viaduct trying to autodetect the Video mode, but it doesn't work for my setup. How to force Viaduct into a certain configuration? A: Create an environment variable called "VIADUCT_VIDEO", which should contain "CGA" or "MDA", without the quotations. For example the CLI command: > setenv VIADUCT_VIDEO MDA before starting Viaduct will force it into MDA emulation mode. Copy ENV:VIADUCT_VIDEO to ENVARC: if you want to make this setting permanent. Q: How can I set Viaduct into full screen mode? A: Create an environment variable called "VIADUCT_OUTPUT", which should contain "WINDOW" or "FULLSCREEN", without the quotations. For example the CLI command: > setenv VIADUCT_OUTPUT FULLSCREEN before starting Viaduct will force it into full screen mode. Viaduct will try to open a screen on the same Monitor as your Workbench screen in 640x480 mode and in 8 bit color depth. This is hardwired and cannot be changed at the moment. Copy ENV:VIADUCT_OUTPUT to ENVARC: if you want to make this setting permanent. Q: I use a text mode PC app, which sets the Text blink settings using a BIOS call, which is not implemented on a CGA card. How can I force Viaduct to always use 16 background colors in text mode? A: Create an environment variable called "VIADUCT_BLINK", which should contain "ON" or "OFF", without the quotations. For example the CLI command: > setenv VIADUCT_BLINK OFF before starting Viaduct will force ignoring the blink bit. This might cause artifacts in some apps which would set the blink bit correctly in the hardware, hence it is not the default. Note that Viaduct doesn't support Text Blinking at this point, so this setting only affects the the 8 additional background colors in CGA text modes. Copy ENV:VIADUCT_BLINK to ENVARC: if you want to make this setting permanent. Thanks & Additional Credits --------------------------- Peter "Ratman" Foldesi - for test hardware support extraordinaire Zsolt "adsr" Mari - for test hardware support Marcus "Alb42" Sackrow - for his awesome work on Free Pascal Amiga version and various additional units Balazs "Poison" Oszvald - for Viaduct icons Version history --------------- 1.3 (2018.12.27) - Implemented support for unofficial CGA 16 color "graphics" modes 80x100 and 160x100, which are technically text mode hacks - Implemented some more menu options. Some upcoming features appear disabled for now. - Implemented cursor blinking speed setting via the menu - Implemented integrated "PC Reset" feature, available via the menu or using the RAmiga-R hotkey combination - Implemented switching between Full Screen mode and Windowed mode via the menu, or using the RAmiga-F hotkey combination - Fixed "Blinking Text Enable" bit polarity when reading the CGA Mode Control register. Note that blinking text itself is still not supported, but the upper 8 background colors are masked away when the bit is enabled. - Added VIADUCT_BLINK environment variable. If set to "OFF", this forces 16 background colors in all CGA text modes, making Viaduct ignore the blink settings in the hardware, by disabling the masking of the upper 8 backgrounds colors. Since some PC apps use a BIOS call to set the blink bit and this BIOS call is not implemented on the CGA, they might end up using wrong colors on a CGA, thus, also in Viaduct. If you use such apps a lot, you might want to use this setting. 1.2 (2018.11.26) - Implemented Full Screen support (hardwired to 640x480 for now) - Implemented 40x25 Text Mode support - Implemented underline support in Mono Text Mode - Implemented video signal off detection, as "blanked" mode - Implemented a simplistic menu, with About... box and Quit, including a Quit-shortcut from Keyboard (Right Amiga - Q) - Implemented Num Lock and Scroll Lock key support - Various fixes in Keyboard support - Fixed some very hacky code while setting the Window title, which failed on some systems - Fixed MDA mode to properly release pens on exit - Fixed a bug where all of the Intuition requesters opened by Viaduct were closed immediately without waiting for interaction. - Added new icons (MagicWB and standard) by Balazs "Poison" Oszvald 1.1 (2018.07.03) - Implemented initial 80x25 Mono Text Mode and MDA emulation support - Automatic detection of the right emulation mode on start, based on the Bridgeboard's configuration file. - Added VIADUCT_VIDEO environment variable, to force a specific display mode and ignore the config (See the FAQ above.) - Now displays the current video mode in the window titlebar - Implemented delta rendering for 320x200 4 color mode, speeds up refresh where the application (usually games) only update small parts of the screen. - Fixed trashed display of the first frame when Viaduct was started while the PC was in 320x200 4 color mode. - Fixed silly a bug, where the cursor drawing could cause a deadlock depending on the CRTC register contents 1.0 (2018.05.27) - First version.
Zum Live Linux: