robocop@netmbx.UUCP (Thorsten Ebers) (05/05/88)
This text is from Ralph Babel.He sent it to me,to post it. So,please,any questions should be posted,because I archive them. Then I send Ralph the weekly new stuff of comp.sys.amiga.tech. Take also note that you should not mail me outside Germany. Thanks Thorsten. The text starts now (wow :-) ): This is an idea I would like to see being implemented in maybe Kickstart 1.4. It would enable the user to combine the features provided by NEWCON: or CON: with devices other than the console.device. To implement a new disk device to be used with the standard filing system or FFS you must simply create a new exec-device that behaves like the trackdisk.device, a new MountList entry, that's it! Oh yeah: except for RAM:, VDK: and the like, but you know what I'm hinting at. Imagine we could do the same with the console-handler. Imagine an environment vector for the console-handler and a MountList entry like ... AUX: Handler = L:NewCon-Handler Device = DEVS:serial.device /* hopefully an ANSI-terminal */ ... The benefits are obvious, I think, although there might be some problems: The console-handler _might_ need more than just the CMD_READ and CMD_WRITE calls (I don't think so), so we probably have to write a VERY SIMPLE new device or enhance the serial.device. Second problem: The console.device is special since it has to be connected to an intuition window, quite difficult via the serial port :-) . Add a "ConsoleType" keyword to the MountList entry: 0 = open intuition window as specified by the filename after the device name (CON:0/0/640/200/foo), then pass window pointer to the IOStdReq and open the device. 1 = ignore filename, don't open or close anything, just the device as specified in the environment vector. This type should probably ignore ACTION_DISK_INFO. An additional flag would specify if the console-handler is to be opened as RAW or CON or even as NEWCON initially (they will hopefully be combined into a single handler for Kickstart 1.4 ...). Maybe a "Unit" keyword, same as the default filing system (multiple serial ports, aarrrgghhh - not again :-) :-) :-) ). And the size of the IORequest to be used. I think these ideas wouldn't be hard to implement. A different method would be to utilize the filename after "CON:" to pass additional information, just like "ConMan" (CON:Dserial.device). At least it would obsolete all Aux-Handlers (and make AUX: more compatible to CON:) and make interfacing a new console-device much easier. Don't care about ACTION_RAW_MODE, line buffering, history, CTRL-X or whatever: Your device just talks ANSI - that's it! Why hasn't anyone thought of it before? Or has anyone? Did I miss anything? Any comments & ideas appreciated, especially from C-A. BTW: The MOUNT command should search the resident-list for the handler specified in the MountList, so re-entrant handlers won't be loaded several times (like PRT:, PAR: and SER:). Thanks, !ralph Ralph Babel, Falkenweg 3, D-6204 Taunusstein, FRG