========================================================================= (C) 1994 by Atari Corporation, GEnie, and the Atari Roundtables. May be reprinted only with this notice intact. The Atari Roundtables on GEnie are *official* information services of Atari Corporation. To sign up for GEnie service, call (with modem) 800-638-8369. Upon connection type HHH (RETURN after that). Wait for the U#= prompt.Type XTX99437,GENIE and press [RETURN]. The system will prompt you for your information. ========================================================================== Programming Real Time Conference January 20, 1994 Host - Mike Allen Guest Speakers - Erin Monaco Keith Kerdes Scott Sanders <[Host] MIKE-ALLEN> Ok folks, our Guests are all here . . and I guess we should get started. The capture buffer is on, so watch yourselves. <[Scott @ SDS] S.SANDERS2> Ooooh mild aftershock, that was neat. <[Host] MIKE-ALLEN> Tonight Erin, Keith and Scott have agreed to discuss and answer questions about TempleMon and SysMon. Since we aren't loaded with folks I will try to keep it informal. I will ask that you try and keep a little order. What I suggest is that after each question, the guests answer in turn, first Erin, then Keith and then Scott (in order of arrival) I'll try and moderate a little, but I hope I don't need to do too much. You guys have been doing great so far. Each of the guests, please use a GA (go ahead) when you are done so that the next person knows to proceed. Using the /rai command for everyone else will let me get things organized. I already have Charles with a /rai. Can I speak? <[Host] MIKE-ALLEN> Charles - hang on while I ask the guests for opening comments on SysMon and temple mon. Charles yea go for a quickie. ga Does anyone know the latest version of SysMon? I have 1.0.8 (10/11/91) Is there a Falcon compatible version or a way to make it work on a F030? ga <[Host] MIKE-ALLEN> Erin? <[Erin] E.MONACO> 1.0.8 is the latest version that I know of charles. No idea on a Falcon version. GA <[Host] MIKE-ALLEN> Keith? ga <[Keith] K.GERDES> 1.0.8 is the version I have running in the background right now. It's dated 1-26-92. wish there was a Falcon comp. version. GA <[Host] MIKE-ALLEN> Hmmm - scott doesn't use it? <[Scott @ SDS] S.SANDERS2> Yes, I use 1.08. That's the best/most recent as far as I can tell. ga 1.08 has a problem on my Mega STe/TOS 2.06 that wraps the screen (right edge over the left side). That should have said 1.0.8 and it has a date of 10.11.91 when you hit the Help key in SysMon ga <[Host] MIKE-ALLEN> Hmmm - let's let Erin start with opening comments. What is Sysmon/TempleMon and why should I use them? GA <[Erin] E.MONACO> All versions that I have seen seem to shift the screen to the right in like 16 bit increments. I just keep toggling between sysmon and the app till it corrects itself. Hmmm, I don't have a speech prepared, but Sysmon is a VERY powerful developement tool which almost completely monitors every aspect of your machines current state. TempleMon is a resident debugger that can be used hand in hand with Sysmon In combination you have a very powerful debugging/monitor system. GA <[Host] MIKE-ALLEN> Erin - what is the latest version of Templemon? ga <[Erin] E.MONACO> 2.01 or something like that... can't recall exactly. GA <[Host] MIKE-ALLEN> Ok - Keith your comments? ga <[Keith] K.GERDES> I'm not familiar with TempleMon's development... I do know SysMon though! SysMon is an excellent programmer's aid. You can monitor these system functions: AES VDI GEMDOS LINE-A XBIOS & BIOS You can also get the status of different facets of the system, such as memory, vectors, etc. GA <[Host] MIKE-ALLEN> Thanks. <[Erin] E.MONACO> Mike, 2.01 is the latest version available on GEnie. Docs & Prg in German. GA <[Host] MIKE-ALLEN> Keith - it what way does it monitor those functions? Some sort of real time display or what? GA Erin - thanks. <[Keith] K.GERDES> Yes. SysMon works in the background. It hooks into the system and you can control which aspects you want to monitor....in realtime. The info displayed is a detailed readout of each TOS function as it is performed- parameters passed and results returned. You can even send the text output to various devices- serial, parallel, file, etc. GA <[Host] MIKE-ALLEN> Wow - sounds like what is needed to debug the BPS. I'm gonna have to look into it. <[Erin] E.MONACO> I'd like to add to keiths comments. ga <[Host] MIKE-ALLEN> GA, Erin. <[Erin] E.MONACO> Sysmon gives you the option to turn on/off tracing of each OS call. In addition, with the profiler you can do a quick initial run to find out which calls were made and how many times they were made. hmmm, gee I'll shut up for now :) GA <[Host] MIKE-ALLEN> Thanks Erin. Scott, your turn for comments. GA <[Scott @ SDS] S.SANDERS2> I've used both Sysmon and Templemon for debugging, however, I haven't used them actively in some time because neither one likes MultiTOS v1.08 and I have to switch setups to use them. Reportedly, v2.01 of Templemon does work, though, I have been unable to have any success with its setup (it's quite involved). Both tools got me out some sticky situations and helped in writing the Compendium (shameless plug) by disassembling the OS when Atari couldn't answer a question about an obscure function. ga <[Host] MIKE-ALLEN> Thanks Scott. Sounds like you need a boot handler such as MouseBoot, etc. I use Mouseboot to swtich from Geneva to MTOS to vanilla MSTe, etc. <[Scott @ SDS] S.SANDERS2> I use Xboot but it's still a fuss. ga <[Host] MIKE-ALLEN> Well, I guess we are ready for questions. /raises please. GA <[Erin] E.MONACO> I've installed 2.01 it works well with my STE and Geneva. ga <[Host] MIKE-ALLEN> <[Keith] K.GERDES> I can send a sample SysMon output file if you'd like to see it? <[Host] MIKE-ALLEN> Ok, bud - ask away! ga <[Bud] B.CONNOLLY1> So, let's see if I have this right... SysMon will tell me about the OS, what it is doing, and Templemon will tell me what my program is up to? ga <[Host] MIKE-ALLEN> Erin? GA <[Erin] E.MONACO> Basically. SysMon show calls made to the OS and y which process as well as detailed reports on system variables, vectors, I/O buffers, ect. ga <[Host] MIKE-ALLEN> Keith, GA <[Keith] K.GERDES> You would use TempleMon to debug a program at the instruction level- ie. a monitor/debugger. MonST is another example. SysMon is a "system call" monitor. If you want to see what parameters to pass, you could see how another program does it. TempleMon is at a lower level. GA <[Host] MIKE-ALLEN> Keith why don't you dump that sysmon output now. I'd kinda like to see it. ga <[Keith] K.GERDES> Ok... ***************************************************************** * * This file was created by SYS_MON, the ATARI ST System Monitor, * copyright by Karsten Isakovic, Berlin * * It is forbidden to publish this file or extracts of it without * the copyright header ! * ALAD wind_update BEG_UPDATE -> 1 ALAD wind_get H 0 TOP -> 1 ALAD wind_update END_UPDATE -> 1 ALAD evnt_multi KYBD BUT { 2,1,1 } MSG TIMER { 0,0 } Buf $0DE35E -> (124,72 ) B$00 K$00 Key $2300 But $FF Event = MU_TIMER ALAD wind_update BEG_UPDATE -> 1 ALAD wind_get H 0 TOP -> 1 ALAD graf_mouse HIDE_MOUSE $000000 -> ALAD graf_mouse SHOW_MOUSE $000000 -> ALAD graf_mouse HIDE_MOUSE $000000 -> ALAD graf_mouse SHOW_MOUSE $000000 -> ALAD wind_update END_UPDATE -> 1 ALAD wind_update BEG_UPDATE -> 1 ALAD wind_get H 0 TOP -> 1 ALAD wind_update END_UPDATE -> 1 ALAD evnt_multi KYBD BUT { 2,1,1 } MSG TIMER { 0,0 } Buf $0DE35E -> (124,72 ) B$00 K$00 Key $2300 But $FF Event = MU_TIMER <[Keith] K.GERDES> GA <[Host] MIKE-ALLEN> <[Erin] E.MONACO> :) <[Host] MIKE-ALLEN> Scott - anything to add? ga <[Scott @ SDS] S.SANDERS2> Not much. Sysmon and Templemon each have features useful to specific situations. Sysmon cannot disassemble assembly code for instance. ga <[Host] MIKE-ALLEN> Ok, I have MonST, etc., from DevPac3. Is there any advantage to TempleMon over my HiSoft stuff? Ga Erin. <[Erin] E.MONACO> Yes, TempleMon remains resident and can be called up at any time, ever try to debug a desk accessory or worse a TSR? :) GA <[Host] MIKE-ALLEN> I thought I could use AMONST for resident use? ga <[Erin] E.MONACO> er, got me! I'm not sure. GA <[Host] MIKE-ALLEN> Ok. Keith? ga <[Keith] K.GERDES> AMONST is the AUTO TSR version of MonST. Very small and quite handy. GA <[Erin] E.MONACO> Thanks Keith. ga <[Host] MIKE-ALLEN> Keith - any comments on TempleMon vs. MonST? ga <[Keith] K.GERDES> I used TempleMon in an initial release but that was several years ago... GA <[Host] MIKE-ALLEN> Scott - any further comments? GA <[Scott @ SDS] S.SANDERS2> I would say that AMONST would probably be better (slightly) than Templemon but I only have MonST which doesn't have the resident capabilites which are essential to me. MonST can trace C source code (sort) of which is its main advantage. ga <[Host] MIKE-ALLEN> Thanks Scott. What does it take to set up TempleMon. Can I use SysMon without TempleMon? Erin - GA <[Erin] E.MONACO> TempleMon and SysMon are designed to work together Using TempleMon 2.01 with Sysmon 1.0.8 in TT hires they will share the same screen. (can't test this but I bet it'd be nice) Yes, you can use both Sysmon and TempleMon independantly. ga <[Host] MIKE-ALLEN> How do you set up Templemon? Scott indicated some problems. GA Scott. <[Scott @ SDS] S.SANDERS2> I had problems with 2.01. It is advertised to work with MultiTOS but doesn't specify a version so I suspect it was tested on 1.01, not 1.08 which I use. The earlier Templemon is simply one AUTO program. The latest Templmon requires an AUTO program, several overlays, things placed in named directorys, and environment setup. Looks powerful but is a bear to setup (Erin seems to have got it though). ga <[Host] MIKE-ALLEN> Thanks - Keith - comment? GA <[Keith] K.GERDES> Just that I'd take TempleMon over DB anyday... GA <[Host] MIKE-ALLEN> Erin - comment? GA. <[Erin] E.MONACO> 2.01 isn't to difficult when you get past the german translations. It comes with an installation program that'll modify the actually program mainly it consists of preferences, like assigning hotkeys, colors, buffers, edit modes and the like. GA <[Scott @ SDS] S.SANDERS2> I speak pretty good german (must be the new math :). <[Host] MIKE-ALLEN> Ok Erin, thanks. Bud has a question. GA Bud. <[Bud] B.CONNOLLY1> How tough are breakpoints to set up in TempleMon? What do you need to be able to set a breakpoint,(ie assembler listing)? ga <[Host] MIKE-ALLEN> Erin - ga. <[Erin] E.MONACO> I've just played with it, so I can't say. GA <[Host] MIKE-ALLEN> Keith - can you help bud? ga <[Keith] K.GERDES> Breakpoints in a debugger are either set from the commandline input or with a hotkey at an address. GA <[Host] MIKE-ALLEN> Scott - GA. <[Scott @ SDS] S.SANDERS2> For instance, if you want a breakpoint at 0x1FFFFF you type: b1 1FFFFF which sets breakpoint 1 to the given address b+ turns breakpoints on... after this point, anytime the PC==address, Templmon is entered. ga <[Erin] E.MONACO> I can add a little more. ga <[Host] MIKE-ALLEN> GA Erin. <[Erin] E.MONACO> SysMon gives the address at which OS calls were made you could use this to your advantage. Also since TempleMon and SysMon work cooperatively you can actually TELL SysMon to jump to TempleMon when certain OS calls are made. ga <[Host] MIKE-ALLEN> Hmmm. Bud - any more? ga <[Bud] B.CONNOLLY1> thinking... <[Host] MIKE-ALLEN> Erin - could I use sysmon to figure out why the Spectrum-Holobyte games don't work on my MSTe? ga <[Erin] E.MONACO> I'd be willing to bet that you could, especially if its because of a bad OS call. If its just some weird code you'd locate it using a debugger. ga <[Host] MIKE-ALLEN> I think it is a bad mouse or event handler call. Where in the auto folder does SysMon reside? Keith ga <[Keith] K.GERDES> SysMon can be run at any point in the AUTO folder. Since it takes up quite a bit of memory, I just run it from the desktop when needed. GA <[Host] MIKE-ALLEN> Doesn't have to run before or after Warp9 or geneva? ga <[Keith] K.GERDES> Shouldn't require any special run order. It even has a provision for de-installing if you run it from the desktop. GA <[Host] MIKE-ALLEN> That's great. I'm gonna have to try it. I wanna look at the Speedo calls in Atari Works and see why I get the Black Page Syndrome! <[Erin] E.MONACO> SysMon/Geneva/Warp_9 doesn't work... at least for me.. 3 bombs. ga <[Host] MIKE-ALLEN> Anyone else have any questions before we let our guests get some sleep? <[Bud] B.CONNOLLY1> I'm sure we could go all night Mike, but I need some sleep myself. 6:00 am comes pretty early! <[Host] MIKE-ALLEN> <[Host] MIKE-ALLEN> Guess not. Closing comments Erin? ga. <[Erin] E.MONACO> In closing... SysMon is VERY handy, well worth the time to learn and use. ga <[Host] MIKE-ALLEN> Keith? ga <[Keith] K.GERDES> GA <[Host] MIKE-ALLEN> hehe <[Host] MIKE-ALLEN> Scott? GA. <[Scott @ SDS] S.SANDERS2> Both programs are very handy. I can't wait to see something running under MultiTOS such as Spy under Windows. Oh well. ga <[Host] MIKE-ALLEN> Thanks to our guests, Erin, Keith and Scott. I'm gonna have to try Sysmon for sure. <[Bud] B.CONNOLLY1> Thanx Erin, Keith and Scott. You've given me some useful information, now I'll just have to dive in and try 'em out! <[Host] MIKE-ALLEN> Capture buffer off. Rabble time.