EWTILENI@pucc.UUCP (04/04/87)
For anyone who missed it, the following text shows you how to get CoCoMax 2 (yes, CoCoMax 2) running on your CoCo 3. - ERIC - <SNIP> <SNIP> <SNIP> <SNIP> <SNIP> <YOU GET THE IDEA...> Using CoCoMax on the CoCo-3 by Ken Schunk This information is public domain. Post it anywhere. Copy it and give it to your friends. Line your bird cage with it. Just please leave my name on it (Unless you decide to line your birdcage. Then I don't care..) Two simple poke's are all that is needed for CoCoMax-2 to run on the CoCo-3. The file that must be modified is the COCOMAX/BIN file. To modify it to work on the CoCo-3, place a BACKUP of the CoCoMax disk in your disk drive and type the following: CLEAR 200,&H3FFF LOADM"COCOMAX/BIN" POKE &H53FB,&HFE POKE &H53FC,&HEF If you are using a X-Pad driver, LOADM it at this point. SAVEM"COCOMAX/BIN",&H4000,&H7FFF,&H492B That's all there is to it if you can use an unmodified HiRes input pack. If you are using a multipak with Tandy's new PAL chip, you will need to modify the HiRes pack to get it to work, since the PAL chip will not let you read from the pack. You have a choice of a couple of solutions. You can modify the pack to be readdressed below &HFF80, such as &HFF60. This will require some knowledge of electronics, since some switching of address lines is required. The other possibility is to use a different PAL chip that allows reading of addresses above &HFF80. I THINK that Spectrum Products may have such a device. Yet another solution would be to not use the pack, and use a different device, such as an X-Pad. If you do readdress the pack or use an X-Pad, you will need to modify MAXTITLE/SYS to allow it to work with the new device. One poke is all that is needed to prevent MAXTITLE/SYS from locking into an endless loop. To fix it, use: PCLEAR 5 LOADM"MAXTITLE/SYS" POKE &HED8,&H21 SAVEM"MAXTITLE/SYS",&HE00,&H266C,&HA027 If you readdress the pack, you will also need to modify COCOMAX/BIN to allow it to read the pack at it's new address. The pokes needed are: POKE &H562D, (Low order byte of pack address) POKE &H7ACE, (Low order byte of pack address) For example, if you modified to pack to be addressed at $FF60, you would use the pokes :POKE &H562D,&H60:POKE &H7ACE,&H60. Remember, these pokes modify COCOMAX/BIN. You first need to LOADM it, then do the pokes. Remember to SAVEM it when you are done. If you use the X-Pad, you will need a driver for the X-Pad, such as the following EDTASM+ assembly code: ORG $5839 ;Start of first mouse area START CMPB #2 ;Is it a button request? LBEQ L2 ;Yes - handle button call LDA $FF61 ;Read pen Y position DECB ;B has 1 if Y and 2 if X BNE L4 ;Skip if call was for Y LDA $FF60 ;Get pen X position L4 LDY #TMP ;Point to data storage STA ,Y ;Save pen position CLRB ;Point to data with B,Y RTS ;Back to CoCoMax TMP RMB 1 ;Data area ORG $562A ;Start of second mouse area LBRA START ;Jump to read if called here L2 LDA $FF62 ;Read pen status ASRA ;Get pen switch bit to 'C' BCS L3 ;Return pen down info LDA #$80 ;Map in expected pen value L3 LBRA L4 ;Return value to COCOMAX END START Enjoy "Never try to teach a pig UUCP : ALLEGRA!PSUVAX1!PUCC.BITNET!EWTILENI how to sing. It only ARPA : EWTILENI@PUCC.PRINCETON.EDU wastes your time and BITNET: EWTILENI@PUCC.BITNET annoys the pig." DELPHI: TILENIUS (ALSO MCI MAIL) VOID WHERE INEXPLICABLE PHONE : 609-734-0048