WILDDJ@VAXB.ASTON.AC.UK (05/12/89)
Here is the source code (assembler) and UUEncoded form of a program I've written called AUXOUT.TOS which redirects _all_ TOS output to the RS232 port. Hope it is of some use to some of you out there! - David -------------------8<---------Cut-Here------------------------------------ ; AUXOUT.TOS ; ========== ; Written by David Wild, 62 Lascelles Avenue, Withernsea, ; North Humberside, HU19 2EB ; JANET EMAIL to WILDDJ@UK.AC.ASTON.VAXB ; This is a dirty routine that redirects all screen text output to the ; RS232 port. It works by setting the con_state system variable to ; point to the BIOS routine to send a character to the AUX port. ; The auxout routine vector address was found from the BIOS listing ; in Atari ST internals. ; To test the program out, run it, then try double clicking on a non ; program file & showing it - it should be sent to AUX. supexec equ 38 ; XBIOS supexec call con_state equ $4a8 ; con_state sys. variable auxout equ $FC08E4 ; contents point to auxout ; Install new vector move.l #install,-(sp) move.w #supexec,-(sp) ; Execute install routine trap #14 ; in supervisor mode addq.l #8,sp clr.w -(sp) trap #1 ; Exit install move.l auxout,con_state ; Make con_state point to rts ; auxout -------------------8<---------Cut-Here------------------------------------ The UUEncoded version of AUXOUT.TOS.... -------------------8<---------Cut-Here------------------------------------ table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]N_ begin 644 AUXOUT.TOS M8!H > "\\ $C\\ "9.3E"/0F=.a 202/Y /P(Y !*A.=0 ( a a end -------------------8<---------Cut-Here------------------------------------ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- ! JANET wilddj@uk.ac.aston.vaxb ! *** * * * ! BITNET wilddj@vaxb.aston.ac.uk ! * * * * * * ! ARPA wilddj%vaxb.aston.ac.uk@cunyvm.cuny.edu ! * * * * * * ! UUCP ...psuvax1!cunyvm.bitnet!vaxb.aston.ac.uk!wilddj ! * * * * * * * !---------------------------------------------------------+ *** *** ** ** ! Home Address: 62 Lascelles Avenue, Withernsea, North ! ! Humberside, HU19 2EB, England ! David J Wild ! University : Dept of Computer Science, ! ! Aston University, Birmingham, England ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
WILDDJ@VAXB.ASTON.AC.UK (05/17/89)
Kristian Rosenvold writes >Something tells me your defined AUXOUT variable in auxout.tos fails quite >miserably on for instance the TOS 1.4 roms !? >(I haven't tried it, but I will...) >Is there noe legal way to do a force redirect of everything to AUX: ? >Kristian Rosenvold, jkr@ifi.uio.no (sorry to post this to the net, but I can't get mail back to you for some reason) Hmmm, yes, AUXOUT is a bit dodgy. It should work with all _existing_ versions of TOS, since this location actually contains a vector to the actual location, so there is a means for changing the address of the routine without changing AUXOUT. However, I don't know about TOS 1.4. I think this is the only effective way of doing it. The trouble with FORCE is that it dosen't work on all output - functions like bconout would still output to the screen, causing a bit of a mess. In fact, I think the only functions that are affected by FORCE are READ and WRITE. Please let me know if I'm wrong or you have any other ideas Dave +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- ! JANET wilddj@uk.ac.aston.vaxb ! *** * * * ! BITNET wilddj@vaxb.aston.ac.uk ! * * * * * * ! ARPA wilddj%vaxb.aston.ac.uk@cunyvm.cuny.edu ! * * * * * * ! UUCP ...psuvax1!cunyvm.bitnet!vaxb.aston.ac.uk!wilddj ! * * * * * * * !---------------------------------------------------------+ *** *** ** ** ! Home Address: 62 Lascelles Avenue, Withernsea, North ! ! Humberside, HU19 2EB, England ! David J Wild ! University : Dept of Computer Science, ! ! Aston University, Birmingham, England ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-