RE: Re: Run CMS non-virtualiized?
"Dave Wade" <g4ugm-/rAkYNWUBEC+PENguQupYdBc4/[email protected]>
| Newsgroups | gmane.comp.emulators.hercules390.vm |
|---|---|
| Message-ID | <0B1DA00C2BBA4ABE935B179977D3AB22@G4UGMT41> |
I think I missed some..... but not a lot.... .... I'll do some proper checking when I get a moment.... C:\Hercules\VM370\source>grep X'83 dms*.* dmsabn.assemble: DC X'83120008' DIAG MSG TO CP AND... @VA05162 00309450 dmsabn.assemble: DC X'834D0010' GO RELEASE PAGES @VA01106 00464100 dmsacm.assemble: DC X'83EF0024' DIAGNOSE TO 'CP' FOR THE DEVICE TYPEP3097 00224000 dmsams.assemble: DC X'831E0024' ISSUE DIAG TO SEE IF TAPE <mailto:ATT'CHD@V305132> ATT'CHD@V305132 00378000 dmsams.assemble: DC X'83120064' FIND SAVED SYSTEM @V305132 00553000 dmsams.assemble: DC X'83120064' LOAD THE SHARED SYSTEM @V305132 00563000 dmsams.assemble: DC X'83340064' PURGE THE SHARED SYSTEM @V305132 00607000 dmsare.assemble: DC X'83670008' ISSUE DETACH REQUEST @V305038 00295000 dmsasn.assemble: DC X'83090024' DIAGNOSE TO GET MODEL <mailto:NUMBER@V505098> NUMBER@V505098 00958200 dmsasn.assemble: DC X'83090024' DIAGNOSE CODE 24 @V305066 00967000 dmsasn.assemble:DIAGNOSE DC X'83010024' @V305066 00992000 dmsbop.assemble: DC X'83230064' FIND SAVED SYSTEM @V305106 02498000 dmsbop.assemble: DC X'83230064' LOAD THE SHARED VSAM SYSTEM @V305106 02512000 Binary file dmsbtp.assemble matches dmscpf.assemble: DC X'83230008' PASS COMMAND LINE TO CP TO EXECUTE 00150000 dmscwr.assemble: DC X'83',X'34',X'005C' EDIT ERROR MSG ACCORDING @VA01388 00115000 dmsdio.assemble: DC X'83',X'48',AL2(DIAGNUM) 00501000 dmsdlk.assemble: DC X'83120018' DIAGNOSE CODE @V305065 01844000 dmsdlk.assemble: DC X'832F0024' ISSUE DEVICE TYPE DIAGNOSE @V305065 06405000 dmsdmp.assemble: DC X'83130008' DIAGNOSE FOR DUMP @V305066 00113000 dmsdmp.assemble: DC X'83140008' DIAGNOSE FOR PDUMP @V305066 00148000 dmsdmp.assemble: DC X'83',X'13',XL2'0008' DIAGNOSE FOR DUMP @V305066 00327000 dmsdmp.assemble: DC X'83',X'14',XL2'0008' DIAGNOSE FOR PDUMP @V305066 00362000 dmsdos.assemble:READY EQU X'83' IND TASK READY TO RUN (IN PIBTAB)@V305001 02026000 dmsdos.assemble: DC X'83450064' FIND SAVED SYSTEM @V305132 02276000 dmsdos.assemble: DC X'83450064' LOAD THE SHARED SYSTEM @V305132 02286000 dmsdsv.assemble: DC X'836F0024' ISSUE DEVICE TYPE DIAGNOSE @V305065 00847000 dmsedi.assemble: DC X'83430024' DIAGNOSE FOR CONSOLE CLASS @VM03203 03110000 dmsedx.assemble: DC X'83340064' LOADSYS @V305614 00261000 dmsedx.assemble: DC X'83890024' DIAG FOR CONSOLE CLASS @V60A6B6 00326000 dmserr.assemble: DC X'83100008' DIAGNOSE IT TO CP 00955000 dmserr.assemble: DC X'83120008' DIAG MSG TO CP AND... @VA05162 01003000 dmsexc.assemble: DC X'83890064' LOADSYS @V305614 00155000 dmsext.assemble: DC X'83',X'10',X'000C' V0040 01339000 dmsfch.assemble: DC X'83900020' DIAGNOSE I/O TO CP @V305001 00716000 dmsfns.assemble: DC X'83',X'D0',X'000C' CALL CP FOR TIME INFO V0040 00515200 dmsfor.assemble: DC X'83230024' ASK CP ABOUT IT 00586000 dmsfor.assemble: DC X'835E0020' LET 'CP' DO ALL THE HARD WORK. @VA03452 00769000 dmsfor.assemble: DC X'835E0020' 01360000 dmsgio.assemble:DIAG DC X'83',X'54',X'0058' SPECIAL DISPLAY DIAGNOSE @VM08823 00157000 dmsifc.assemble: DC X'8310001C' DIAGNOSE TO PERFORM ERASE. IF THE @V4085A8 02207000 dmsifc.assemble: DC X'8321002C' DIAGNOSE '2C' -- WILL RETURN <mailto:CCPD@V5088AA> CCPD@V5088AA 02897000 dmsifc.assemble: DC X'8313002C' RETRIEVE HDRSTART AND HDRWFLG @V5088AA 02903000 dmsini.assemble:DIAGRD DC X'83010020' READ THE NUCLEUS INTO MAIN STORAGE 00169000 dmsini.assemble: DC X'83DF0024' FIND OUT THE CONSOLE ADDRESS V0029 00189250 dmsini.assemble: DC X'8310000C' ... 00260000 dmsini.assemble:CHECKCON DC X'83DE0024' IS IT ATTACHED ? 00269000 dmsini.assemble:CHECKIPL DC X'83010024' IS THE DEVICE ATTACHED AND DASD ? 00309000 dmsini.assemble: DC X'83010020' READ IN THE MFD FROM THE IPL DEVICE 00316000 dmsini.assemble: DC X'83010020' WRITE THE MFD BACK OUT AGAIN 00319000 dmsini.assemble: DC X'83010020' WRITE OUT IPL TEXT AND DMSINIR 00456000 dmsini.assemble: DC X'83010020' WRITE OUT IPL TEXT AND DMSINIR 00463000 dmsini.assemble:DIAGWR DC X'83010020' WRITE THE NUCLEUS ONTO THE DISK 00509000 dmsinm.assemble: DC X'8310000C' 'DIAGNOSE' TO READ CLOCK P8024 00100000 dmsins.assemble: DC X'83100008' ISSUE 'SAVESYS' WITH USER'S INPUT P3096 00198000 dmsins.assemble: DC X'83340064' DIAGNOSE @V305665 00243000 dmsins.assemble: DC X'83DF0024' SPECIAL-FORM DEVTYPES DIAGNOSE. V0218 00252000 dmsins.assemble: DC X'83AE0020' SEE WHAT'S OUT THERE 00273000 dmsins.assemble: DC X'83AD0024' FIND OUT ITS CHARACTERISTICS 00337000 dmsins.assemble:CORINIT DC X'83DE0060' DIAGNOSE MACHINE SIZE @V305001 00362000 dmsins.assemble: DC X'83120064' LOADSYS @V305614 00402000 dmsins.assemble: DC X'83120064' PURGESYS @V305614 00410000 dmsins.assemble: DC X'8312000C' TELL ME THE TIME @V305032 00416000 dmsins.assemble: DC X'83D10024' DIAG FOR CONSOLE CLASS @VM03203 00490000 dmsint.assemble: DC X'834D0064' PURGESYS CMSSEG @V305614 00332750 dmsint.assemble: DC X'834D0010' GO RELEASE PAGES. 00342000 dmsits.assemble: DC X'83120064' ISSUE LOADSYS DIAGNOSE @V305665 00816000 dmsldr.assemble: CLI 8(R12),X'83' WEAK EXTRN REFERENCE P3093 00924000 dmsldr.assemble:CHKTYPE CLI 8(R12),X'83' IS THIS A WEAK EXTRN 01652000 dmslds.assemble: DC X'83100020' DIAGNOSE READ TO CP @V201101 01177000 dmslsb.assemble:REL DC X'83BA0010' RELEASE PAGES @VA04106 00589800 dmsncp.assemble: DC X'83B2',S(CCPDIAG) INVOKE DMKSNC VIA DIAG @V200820 00599000 dmsold.assemble: CLI 8(R12),X'83' WEAK EXTRN REFERENCE P3093 00558000 dmsold.assemble:CHKTYPE CLI 8(R12),X'83' IS THIS A WEAK EXTRN 01336000 dmsprt.assemble: DC X'83',X'23',XL2'0024' ISSUE DEVICE TYPE DIAGNOSE 00188000 dmsprv.assemble: DC X'83100020' DIAGNOSE I/O TO CP @V305001 00295000 dmspun.assemble: DC X'83',X'23',XL2'0024' ISSUE DEVICE TYPE DIAGNOSE 00140000 dmsrdc.assemble: DC X'83',X'23',XL2'0024' ISSUE DEVICE TYPE DIAGNOSE V0305 00163500 dmsrea.assemble: DC X'8323002C' DIAGNOSE RETURNS THE DISK @V5088AA 00287100 dmsrea.assemble: DC X'83120030' DIAGNOSE READS PAGE OF ERROR RECS. @V4085A8 00352000 dmsros.assemble: DC X'83100020' CALL CP FOR DISK I/O @V201105 00658000 dmsrrv.assemble: DC X'83100020' DIAGNOSE I/O TO CP @V305001 00482000 dmsset.assemble: DC X'83340064' @V305014 00832000 dmsset.assemble: DC X'83340064' @V305014 00838000 dmsset.assemble: DC X'83900020' DIAG FOR DISK I/O @VA04692 00917000 dmsset.assemble: DC X'83340064' ISSUE FINDSYS DIAGNOSE @V305001 00958000 dmsset.assemble: DC X'83340064' ISSUE LOADSYS DIAGNOSE @V305001 00967000 dmsset.assemble: DC X'83130064' ISSUE PURGESYS DIAGNOSE @V305001 01007000 dmsset.assemble: DC X'83130064' ISSUE PURGESYS DIAGNOSE @V305114 01013000 dmsset.assemble: DC X'83340064' PURGE OLD SEGMENT @V305614 01217000 dmsset.assemble: DC X'83340064' FINDSYS NEW SEGMENT @V305614 01223000 dmsset.assemble: DC X'83340064' LOADSYS @V305614 01234000 dmssrv.assemble: DC X'83100020' DIAGNOSE I/O TO CP @V305001 00329000 dmsssk.assemble: DC X'83450064' FINDSYS @V305614 00128000 dmssvt.assemble: DC X'8310000C' DIAGNOSE FOR TIME V0277 02393000 dmstio.assemble:DIAG20 DC X'839A0020' DIAGNOSE TAPE I/O @VA03458 00276100 dmstpe.assemble: DC X'83560024' DIAGNOSE TO CHECK FEATURES P0917 00568000 dmsvib.assemble: DC X'83230064' FIND SAVED SYSTEM @V305174 00130000 dmsvib.assemble: DC X'83230064' LOAD THE SHARED SYSTEM @V305174 00142000 dmsvsr.assemble: DC X'83120064' PURGE THE SHARED SYSTEM @V305106 00171000 dmsvsr.assemble: DC X'83340064' PURGE SAVED AMS SYSTEM @V305106 00186000 dmsxcp.assemble: DC X'83010020' DIAGNOSE I/O TO CP @V305001 00903000 dmsxcp.assemble: DC X'83010020' DIAGNOSE I/O TO CP @V305001 01007000 dmszap.assemble: DC X'83',X'87',X'005C' EDIT ERROR MSG. ACCORDING @VM03027 02786000 Dave Wade G4UGM Illegitimi Non Carborundum -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Harold Grovesteen Sent: 30 August 2010 23:35 To: [email protected] Subject: Re: [H390-VM] Re: Run CMS non-virtualiized? Dave, here is my summary of the DIAGNOSES you have identified. I would appreciate it if you could identify the values used in dmsncp and dmsdio. X'8' - Virtual Console Function - implemented (BUT for Hercules) X'C' - Pseudo Timer - implemented X'20' - 370 Synchronous I/O for DIAGNOSE Support - NOT IMPLEMENTED X'24' - Device Type and Features - implemented X'58' - 3270 Virtual Console Interface (vm/370 vintage) - NOT IMPLEMENTED X'5C' - Error Message Editing - Implemented as a NOOP CCPDIAG in dmsncp - If "ncp" means Network Control Program, then this might be X'50' - Save the 370X Control Program Image. Not one we need to worry about (if this is the correct code). DIAGNUMin dmsdio - I am guessing this is X'18' from the VM/370 Systems Programmer's Guide, guessing the dio means "disk I/O". This is close to X'A8' and would not be too difficult to implement. Implemented DIAGNOSE X'A8' is the generic replacement for DIAGNOSE X'20'. It could probably be adapted to support DIAGNOSE X'20' without too much difficulty. DIAGNOSE X'58' might be another matter entirely, but I suspect if DIAGNOSE X'24' responds with the virtual device type of 3215 AND the real device type also 3215, it will not use DIAGNOSE X'24'. Hercules always reports the real and virtual devices to be the same. DIAGNOSE X'8' and X'5C' of course relate to actual commands CMS issues to CP. What these might be and where they exist would be informative. My suspicion is that parts of CMS might need to be adjusted for Hercules residence. Harold Dave Wade wrote: Its not quite as simple as you might imagine as DIAG is sometimes coded DIAG and sometimes X'83' and I guess it could be coded as x'83nn' I got C:\Hercules\VM370\source>grep X'83' dms*.* dmscwr.assemble: DC X'83',X'34',X'005C' EDIT ERROR MSG ACCORDING @VA01388 00115000 dmsdio.assemble: DC X'83',X'48',AL2(DIAGNUM) 00501000 dmsdmp.assemble: DC X'83',X'13',XL2'0008' DIAGNOSE FOR DUMP @V305066 00327000 dmsdmp.assemble: DC X'83',X'14',XL2'0008' DIAGNOSE FOR PDUMP @V305066 00362000 dmsdos.assemble:READY EQU X'83' IND TASK READY TO RUN (IN PIBTAB)@V305001 02026000 dmsext.assemble: DC X'83',X'10',X'000C' V0040 01339000 dmsfns.assemble: DC X'83',X'D0',X'000C' CALL CP FOR TIME INFO V0040 00515200 dmsgio.assemble:DIAG DC X'83',X'54',X'0058' SPECIAL DISPLAY DIAGNOSE @VM08823 00157000 dmsldr.assemble: CLI 8(R12),X'83' WEAK EXTRN REFERENCE P3093 00924000 dmsldr.assemble:CHKTYPE CLI 8(R12),X'83' IS THIS A WEAK EXTRN 01652000 dmsold.assemble: CLI 8(R12),X'83' WEAK EXTRN REFERENCE P3093 00558000 dmsold.assemble:CHKTYPE CLI 8(R12),X'83' IS THIS A WEAK EXTRN 01336000 dmsprt.assemble: DC X'83',X'23',XL2'0024' ISSUE DEVICE TYPE DIAGNOSE 00188000 dmspun.assemble: DC X'83',X'23',XL2'0024' ISSUE DEVICE TYPE DIAGNOSE 00140000 dmsrdc.assemble: DC X'83',X'23',XL2'0024' ISSUE DEVICE TYPE DIAGNOSE V0305 00163500 dmszap.assemble: DC X'83',X'87',X'005C' EDIT ERROR MSG. ACCORDING @VM03027 02786000 C:\Hercules\VM370\source>grep " DIAG " dms*.assemble dmsabn.assemble: DC X'83120008' DIAG MSG TO CP AND... @VA05162 00309450 dmsams.assemble: DC X'831E0024' ISSUE DIAG TO SEE IF TAPE <mailto:ATT%27CHD@V305132> ATT'CHD@V305132 00378000 dmsedx.assemble: DC X'83890024' DIAG FOR CONSOLE CLASS @V60A6B6 00326000 dmserr.assemble: DIAG R1,R14,X'24' FIND ADDRESS OF CONSOLE V0005 00893000 dmserr.assemble: DIAG R1,R0,8 DIAGNOSE TO CP V0005 00941000 dmserr.assemble: DC X'83120008' DIAG MSG TO CP AND... @VA05162 01003000 dmsins.assemble: DC X'83D10024' DIAG FOR CONSOLE CLASS @VM03203 00490000 dmsncp.assemble: DC X'83B2',S(CCPDIAG) INVOKE DMKSNC VIA DIAG @V200820 00599000 dmsset.assemble: DC X'83900020' DIAG FOR DISK I/O @VA04692 00917000 dmstio.assemble:DEC13 DC H'13' RETCOD FROM DIAG 20 @VA08542 00309210 dmsxcp.assemble: DC AL1(83),AL3(SDEXIT) - CNTRL DIAG LOAD @V305001 01543000 dmsxcp.assemble: DC AL1(115),AL3(SDEXIT) - CNTRL DIAG WRITE @V305001 01544000 dmsxcp.assemble: DC AL1(68),AL3(SDEXIT) - SENSE READ DIAG ST @V305001 01550000 You may also run into issues with HERCULES commands not matching CP command abbreviations. So if a user types "I 190" that would work in CP but not on Hercules... Dave Wade G4UGM Illegitimi Non Carborundum -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Harold Grovesteen Sent: 30 August 2010 11:05 To: [email protected] Subject: Re: [H390-VM] Re: Run CMS non-virtualiized? Yes, I was referring to the VM/370 version. This seems like an interesting project some day. With all of the enhancements going on that are really CMS enhancements (as near as I can tell from lurking here), running CMS without CP might be more attractive. I was just wondering if anyone had done some sort of scan of the source code to find the diags used. Something that might be more organized than trial and error. Harold Roger Bowler wrote: On Sunday, August 29, 2010 Dave Wade wrote: They are just the normal DIAGs so I don't believe there isn't a list any where. I think the main one is for disk i/o but you could do a PER TRACE of the IPL to see what actually happens. I guess CMS will IPL without some DIAGs but then other commands would fail. Which version of CMS are we talking about? The VM/370 version? Almost from the very start Hercules had support for some of the CP DIAG codes, because one of the scenarios envisaged for Hercules in the 1999 timeframe was that CMS would run directly in a Hercules machine without CP. The idea was to offer some kind of mainframe-like personal computing environment (what I considered the PC "ought" to have been!) Being very light on resource consumption, CMS was ideally suited to the somewhat limited PC computing power of the time. At the time the idea did not gain much traction, as people seemed more interested in running MVS, so the project was never completed, but the DIAG support is still there (in vm.c). It would be relatively straightforward to add the missing DIAG codes. AFAICR they are well-documented in the VM manuals. To find out which DIAG codes are missing, you just have to IPL CMS, see where it fails, add the missing DIAG, and repeat until it no longer fails :-) -- Regards, Roger Bowler http://perso.wanadoo.fr/rbowler Hercules "I can't believe it's not a mainframe!" ------------------------------------ Yahoo! Groups Links http://groups.yahoo.com/group/H390-VM/ Individual Email | Traditional http://groups.yahoo.com/group/H390-VM/join (Yahoo! ID required) [email protected] [email protected] [email protected] http://docs.yahoo.com/info/terms/