English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 19 May 2016, 19:04   #41
ovale
Registered User

 
Join Date: Jun 2014
Location: milan / italy
Posts: 164
I checked better the files in the effects folder with an hex viewer and they looks like executables embedding ilbm/anim.
I say executables because they start with the same 32 bits as other executables. Not sure if AmigaOS has a 32 bit magic code at beginning of files so I may be wrong.
Anyway double click them results in a error. Suspend or reboot.

I think that observing what is on the Amiga screen while the effects are played is key to understand how the Amiga-> toaster communication works.

Maybe someone with a videotoaster can put on YouTube a video of what comes from the Amiga external video connector.
ovale is offline  
Old 19 May 2016, 20:24   #42
Locutus
Registered User

 
Join Date: Jul 2014
Location: Finland
Posts: 1,091
Doesn't the Videotoaster use the parport lines as exposed on the videoslot. Then dumping the parport lines makes more sense :-)
Locutus is offline  
Old 19 May 2016, 21:32   #43
ovale
Registered User

 
Join Date: Jun 2014
Location: milan / italy
Posts: 164
I downloaded the source code and this is how it seems to work:
- the parallel port is used only to read data from the videotoaster frame store.
- the RGBI (4bit) are used to send data from Amiga to videotoaster.
- sprite 0 and 1 are used to encode sort of registers that control the videotoaster.
- bitplanes are used too. They guide the effects controlling things like: mix channel, alpha channel, color. They are also used to control the fetching of of the samples from the frame store allowing all the warp effects.
ovale is offline  
Old 19 May 2016, 22:46   #44
Locutus
Registered User

 
Join Date: Jul 2014
Location: Finland
Posts: 1,091
I see you did your homework far better then I did. Sorry for being a wise ass :-D

Interesting solution they took.
Locutus is offline  
Old 20 May 2016, 08:29   #45
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 48
Posts: 25,947
Quote:
Originally Posted by ovale View Post
I downloaded the source code and this is how it seems to work:
- the parallel port is used only to read data from the videotoaster frame store.
- the RGBI (4bit) are used to send data from Amiga to videotoaster.
- sprite 0 and 1 are used to encode sort of registers that control the videotoaster.
- bitplanes are used too. They guide the effects controlling things like: mix channel, alpha channel, color. They are also used to control the fetching of of the samples from the frame store allowing all the warp effects.
Where are those (and all other hardware level/driver) source code file(s)? That archive is a mess and I can only find software that talks to the driver(s), not software that talks to the hardware.
Toni Wilen is online now  
Old 23 May 2016, 14:04   #46
ovale
Registered User

 
Join Date: Jun 2014
Location: milan / italy
Posts: 164
Indeed as many big projects, the code a maze. I have still to figure out how it works in detail. Anyway, looking at picture of the board and the patents I have the conjectures above.
Here some files I think are at the lowest layers of the codebase.
\VTF-OS\Toaster Source (Cleaned Up)\TFOS.POLITE\switcher
INC\vthand.i
SRC\cop.a
SRC\autocal.a

Message to the VideoToaster owners, please make a youtube video recording (ideally side by side) what comes from the Amiga video output and from the VideoToaster output.
Comparing the 2 video we can understand how the Amiga video output is used to drive the VideoToaster HW.
ovale is offline  
Old 23 May 2016, 20:27   #47
emufan
Registered User
 
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
[ Show youtube player ] on youtube - for a start.
ovale: thank you for your investigations
emufan is offline  
Old 24 May 2016, 00:11   #48
ovale
Registered User

 
Join Date: Jun 2014
Location: milan / italy
Posts: 164
Thank you emufan!
If possible, we need higher resolution.
Ideally 1080p 60hz.
ovale is offline  
Old 24 May 2016, 14:51   #49
gulliver
BoingBagged

gulliver's Avatar
 
Join Date: Aug 2007
Location: The South of nowhere
Age: 45
Posts: 2,341
An old related tale:

Back in the 90´s I was using Scala MM300 on an Amiga, that also had a NewTek Video Toaster in a small cable tv channel. I used the Toaster output as a "genlock". But sometimes during playback, the system crashed or the composite output went mad.

I remember the technician phoned to Oslo, Norway to get support from Scala.

They told him that apparently, the Video Toaster uses the upper scan lines, sometimes known as the vertical blanking interval, to pass information to and from the Amiga.

At the end, there were no workarounds, other than to avoid any of the "push" wipes.
gulliver is offline  
Old 25 May 2016, 00:21   #50
emufan
Registered User
 
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
Quote:
Originally Posted by ovale View Post
Thank you emufan!
If possible, we need higher resolution.
Ideally 1080p 60hz.
I just found this one, it is not my setup - i dont have a toaster.
since there were some flickerings and artefacts, i thought it could help.
emufan is offline  
Old 01 June 2016, 02:48   #51
emufan
Registered User
 
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
OpenVideoToasterCD:Toaster Source (Original)/toastersrc/switcher/SRC/switcher.a:
first the obvious:
Quote:
*+ Switcher
*+
*+ This is the main driver program for the Video Toaster which initializes
*+ the Video Toaster and its support environment, provides the backbone of
*+ resource control over the AMIGA and the Video Toaster in the form of the
*+ main interface/switcher, and finally when the time comes, it will
*+ de-allocate the Video Toaster and its support environment.
but this now at line 579
Quote:
***********************************************************
;;TOASTERLESS SET 1 ; This flag allows running the
; Toaster code, even if there isn't
; a Toaster present.
there are several hits for TOASTERLESS in this file - so it get used in the code.
for me it sounds someone skilled can build a version of the switcher with the variable set to 1.
may work like Lightrave - which emulated a switcher aswell.
(just tested Lightrave with the toaster applications - does not work)

OpenVideoToasterCD:Toaster Source (Original)/toastersrc/switcher/SRC/switcherGPI.a:
Quote:
* SwitcherGPI.a
*
* This source file contains routines for GPI triggering of the Switcher task.
* The GPI trigger source will be from the left fire button pin of the second
* gameport. (bit 7 of CIAAPRA at $BFE001) These routines require only
* ExecBase and the Switcher task address to operate. They must all be used
* exclusively within the Switcher task.
*
* Addendum 8/2/90:
*
* Addendum 1/18/91:
* Added outputting of GPI triggers on the right fire button pin of the
* second gameport. (pin 9 of the second gameport connector) Those routines
* below that were affected will be marked.
no clue what GPI means, but the vertical blank interrupt was mentioned before.
Quote:
* void ProcessSwitcherGPI()
*
* This function generates GPI signals to the Switcher based on the state of
* the Amiga hardware at the time of the call. This function should be called
* within some monitor loop such as a vertical blank interrupt server so that
* a continuous watch can be maintained over the Amiga hardware responsible
* for generating a GPI trigger. A trigger signal is sent whenever GPI
* triggering is enabled and the Amiga hardware denotes that the hardware line
* has completed the enabled transition. Also when the GPI signal is sent to
* the Switcher task, GPI triggering is disabled. While is a disabled state,
* further Amiga hardware triggers are ignored, so GPI triggers are never
* pending. The condition codes are trashed, but no registers are altered.
*
OpenVideoToasterCD:Toaster Source (Original)/toastersrc/switcher/SRC/switcher.a:
line 3808:
Quote:
*==== Install the SoftSprite vertical blank interrupt server.

InstallSoftSprite:

* ; open up the SoftSprite system
move.w #VBEAMSYNCH,d0 ; synch audio channel 0 to specified
* ; scan line
XCALL OpenSoftSprite
beq.s 10$ ; jump on if all went OK

SETERR 40 ; error codes start at 40
ABORT CleanAndExit(pc) ; else denote an error and exit

10$:
rts
the functions for this thing can be found here:
OpenVideoToasterCD:Toaster Source (Original)/toastersrc/switcher/SRC/softsprite.a
Quote:
*+ SoftSpriteVBServer
*+
*+ This code comprises the vertical blanking interrupt server for
*+ implementing a Software Sprite. This is currently done using Audio
*+ channels 0/1 in a direct processor Interrupt 4 vector handler.

Last edited by emufan; 01 June 2016 at 03:29.
emufan is offline  
Old 01 June 2016, 15:03   #52
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 48
Posts: 25,947
Quote:
Originally Posted by emufan View Post
The GPI trigger source will be from the left fire button pin of the second gameport. (bit 7 of CIAAPRA at $BFE001)
Code does wait for joystick button state to change (either 0->1 or 1<0)

Does something happen if you press joystick fire button few (or even more) times?
Toni Wilen is online now  
Old 01 June 2016, 15:19   #53
ovale
Registered User

 
Join Date: Jun 2014
Location: milan / italy
Posts: 164
From https://archive.org/stream/NewTekniq...ns_US_djvu.txt


The General Purpose Interface (GPI) is an event triggering option that is available on
most edit controllers. NewTek took advantage of this in the design of the original
Toaster software so that traditional controllers could trigger the Toaster Switcher
effects without having any direct software connection to the Toaster.
ovale is offline  
Old 03 June 2016, 09:03   #54
emufan
Registered User
 
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
hmm, not so exciting. external conroller could be such a jog-shuttle thing controller device?
pyromania should lend one of you his toaster - this would really help :]
emufan is offline  
Old 03 July 2016, 03:59   #55
Pyromania
Moderator

Pyromania's Avatar
 
Join Date: Jan 2002
Location: Chicago, IL
Posts: 3,198
Quote:
Originally Posted by Toni Wilen View Post
Code does wait for joystick button state to change (either 0->1 or 1<0)

Does something happen if you press joystick fire button few (or even more) times?
Toni do you need a Video Toaster card to help you emulate it?
Pyromania is offline  
Old 06 July 2016, 10:28   #56
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 48
Posts: 25,947
Quote:
Originally Posted by Pyromania View Post
Toni do you need a Video Toaster card to help you emulate it?
Probably but nothing is guaranteed.

It is still far too huge task to emulate it. Interesting yes but it can take far too much time without any guarantees of any results.. It also can be easier done than said but lack of any hardware information makes it impossible to know in advance. (Where it it disappear? If all sources and everything is available, where did the documentation go? I'd have expected some simple things like basic IO register listings to be included with the sources)

And finally, I can only accept the offer if:
- I can accidentally break it by doing something (too) stupid. There is always tiny danger of doing something stupid when poking around with scope/logic analyzer probes.
- no guarantees for any kinds of visible results. (emulation or whatever)
- time frame: no one knows.
Toni Wilen is online now  
Old 06 July 2016, 18:33   #57
emufan
Registered User
 
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
Quote:
Originally Posted by Pyromania View Post
Toni do you need a Video Toaster card to help you emulate it?

Quote:
Originally Posted by Toni Wilen View Post
Probably but nothing is guaranteed.
currently there is nothing, it can only get better
emufan is offline  
Old 07 July 2016, 05:21   #58
gulliver
BoingBagged

gulliver's Avatar
 
Join Date: Aug 2007
Location: The South of nowhere
Age: 45
Posts: 2,341
Quote:
Originally Posted by emufan View Post


currently there is nothing, it can only get better
I also agree.

There is a bunch of programs that would be interesting to use under WinUAE, but they require a Video Toaster to even start. And besides, the Video Toaster wether we like it or not played a very important role in the history of the Amiga, so it certainly represents a an important goal for Amiga emulation.
gulliver is offline  
Old 07 July 2016, 13:19   #59
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 48
Posts: 25,947
Useful (and boring) starting point would be to catalog all programs that need VT. (and actually test they do need it). It will help testing in the future.
Toni Wilen is online now  
Old 07 July 2016, 16:31   #60
emufan
Registered User
 
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
toaster software that has been found i've put on the ftp.
not all need the toaster to operate, some are kind of converter and addons, additonal effects/wipes.
you have to install the toaster system software. version 3.1 and 4.2 are on the iso.
IIRC both you can install at the same time.
/Commodore_Amiga/CD/AmigaCD/App/VideoToaster43.zip (iso with 3.1 and 4.2 software)
~Uploads/emu/VideoToaster/Video.Toaster_v4.3/Toaster4.3_Install.Disk.zip (install floppy for the iso above)

an older version, 2.0 is also available:
~Uploads/emu/VideoToaster/Video.Toaster_v2.0/Toaster2.0.zip

to prevent conflicts, you may create 3 configurations , each with one version.
basic workbench installation, next the toaster software.
the 2.0 software i've installed on 030/882 kick/wb 2.0 full-ecs system.
the 4.2 software i've on a 040 kick/wb 3.x aga system.

when i start the vt2.0 (switcher) software , i get a VT logo with "stand by", it vanishes after a second
and I get a grey screen, thats all - cannot switch back to workbench, but no crash.

the lightwave versions on the isos will only work with the toaster/switcher.
testing lightwave version on vt2.0 w/o running switcher results in:
lightwave.fp FindPort ToasterSwitcher.port Fail (snoopdos output)

AlphaPaint is another one which does nothing w/o the toaster - a requester says:
"Video Toaster is not active!
Please run switcher and then quit before running Alpha Paint"
it does not look for a special port,as seen with lightwave above.

so this is a good starting point.

Last edited by emufan; 07 July 2016 at 17:10.
emufan is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Any plans to make a sound card emulation? amigafreak68k support.WinUAE 17 01 January 2015 10:15
A600: CF in IDE, SRAM card in PCMCIA... how to add a 'to PC transfer card'? Photon support.Hardware 9 15 January 2011 18:17
Ethernet card hardware emulation gilgamesh request.UAE Wishlist 36 21 September 2009 10:32
PCMCIA SRAM card emulation? Visper support.WinUAE 6 18 July 2008 15:36
Anyone tried a 15kHz RGB video card for emulation? buckrogers support.Hardware 10 27 March 2005 10:20

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 14:50.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Page generated in 0.13549 seconds with 15 queries