home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-08-14 | 22.2 KB | 1,114 lines |
- ;
- ; BeerMon Preferences Editor
- ;
- _SysBase=4
- incdir "DH0:Include"
-
- CloseLibrary = -414
- Forbid = -132
- GetMsg = -372
- OldOpenLibrary = -408
- ReplyMsg = -378
- WaitPort = -384
-
- Close = -36
- Open = -30
- Output = -60
- Read = -42
- Seek = -66
- Write = -48
-
- DisplayBeep = -96
-
- GT_GetIMsg = -72
- GT_ReplyIMsg = -78
- GT_SetGadgetAttrsA = -42
-
- bmmaxlen = $30000
-
- preflen = 4+4+4+4+(10*20)+30
- patchoff= 4
- patchlen= 4+4+4+(10*20)
-
- bmpid = "BMP"<<8+0
-
- run: move.l 4.w,a6
- move.l $114(a6),a3
- moveq #0,d0
- tst.l $ac(a3) ;pr_cli
- bne.b fromcli
- lea $5c(a3),a0
- jsr WaitPort(a6)
- lea $5c(a3),a0
- jsr GetMsg(a6)
- fromcli:move.l d0,wbmsg
-
- move.w $14(a6),d2
- lea dosname(pc),a1
- jsr OldOpenLibrary(a6)
- move.l d0,dosbase
- beq.w nodos
-
- cmp.w #36,d2
- bhi.b kickok
- move.l d0,a5
- exg a5,a6
- jsr Output(a6)
- move.l d0,d1
- beq.b nohd
- move.l #kickmsg,d2
- move.l #kicklen,d3
- jsr Write(a6)
- nohd: exg a5,a6
- bra.w nogad
-
- kickok: lea gadname(pc),a1
- jsr OldOpenLibrary(a6)
- move.l d0,_GadToolsBase
- beq.w nogad
- lea intname(pc),a1
- jsr OldOpenLibrary(a6)
- move.l d0,_IntuitionBase
- beq.w noint
-
- jsr SetupScreen
- bne.w initfail
- jsr OpenProject0Window
- bne.w initfail
-
- move.l Project0Wnd,a4
- bsr.w ldpref
-
- moveq #0,d7
- gadepty:tst.l d7
- bne.w leave
-
- move.l 4.w,a6
- move.l $56(a4),a0
- jsr WaitPort(a6)
-
- move.l _GadToolsBase(pc),a6
- move.l $56(a4),a0
- jsr GT_GetIMsg(a6)
- tst.l d0
- beq.b gadepty
- move.l d0,a1
- movem.l a1/a6,-(a7)
-
- cmp.l #$40,$14(a1) ;class_gadgetup
- bne.w gadlp0
- move.w $18(a1),d2 ;code
- move.l $1c(a1),a0 ;iadress
- move.w $26(a0),d0 ;gadgetid
- cmp.w #GD_Gadget180,d0
- bne.b nocanc
- moveq #-1,d7
-
- nocanc: cmp.w #GD_Gadget100,d0
- bne.b nomodeg
- move.b d2,prefbuf+8+1
- nomodeg:cmp.w #GD_Gadget110,d0
- bne.b nokeymg
- and.b #$f0,prefbuf+8+2
- or.b d2,prefbuf+8+2
- nokeymg:cmp.w #GD_Gadget120,d0
- bne.b noreptg
- move.b d2,prefbuf+8+3
- noreptg:cmp.w #GD_Gadget210,d0
- bne.b nocpug
- move.b d2,prefbuf+8+0
- nocpug:
- cmp.w #GD_Gadget190,d0
- bne.w nodoit
- bsr.w update
-
- move.l dosbase(pc),a6
- lea Project0Gadgets+(GD_Gadget200*4),a0
- bsr.w getadr
- move.l a1,d1 ;name
- move.l #1005,d2 ;load
- jsr Open(a6)
- move.l d0,d4
- beq.w noop3
- move.l d4,d1
- move.l #bmbuf,d2
- move.l #bmmaxlen,d3
- jsr Read(a6)
- move.l d0,bmlen
- move.l d0,-(a7)
- beq.b bmemp
-
- lea bmbuf,a0
- move.l #bmmaxlen,a1
- add.l a0,a1
- move.l #"PTCH",d0
- ptcnf: cmp.l (a0)+,d0
- beq.b ptcfnd
- subq.w #2,a0
- cmp.l a0,a1
- bne.b ptcnf
- clr.l (a7) ;set error flag
- bra.w bmemp ;patch not found
- ptcfnd: sub.l #bmbuf,a0
- move.l a0,d2 ;offset
- move.l d4,d1
- moveq #-1,d3 ;offset beg
- jsr Seek(a6)
- move.l d4,d1
- move.l #prefbuf+patchoff,d2
- move.l #patchlen,d3
- jsr Write(a6)
- cmp.l d3,d0
- seq d0
- ext.w d0
- ext.l d0
- move.l d0,(a7) ;clr error flag
- bmemp: move.l d4,d1
- jsr Close(a6)
- tst.l (a7)+
- beq.b noop3
-
- moveq #1,d7
- bra.b opok3
- noop3: bsr.w beep
- opok3:
-
- nodoit: cmp.w #GD_Gadget130,d0
- bne.b nogad13
- lea Project0Gadgets+(GD_Gadget130*4),a0
- bsr.w getadr
- bsr.w cvrgb
- bmi.b nogad13
- bsr.w beep
- move.l Project0Gadgets+(GD_Gadget130*4),a0
- lea GadGet130Tags,a3
- bsr.w setgad
- nogad13:cmp.w #GD_Gadget140,d0
- bne.b nogad14
- lea Project0Gadgets+(GD_Gadget140*4),a0
- bsr.w getadr
- bsr.w cvrgb
- bmi.b nogad14
- bsr.w beep
- move.l Project0Gadgets+(GD_Gadget140*4),a0
- lea GadGet140Tags,a3
- bsr.w setgad
- nogad14:
-
- cmp.w #GD_Gadget150,d0
- bne.w nogad15
- bsr.w ldpref
-
- nogad15:cmp.w #GD_Gadget160,d0
- bne.w nogad16
-
- bsr.w update
-
- move.l dosbase(pc),a6
- lea Project0Gadgets+(GD_Gadget170*4),a0
- bsr.w getadr
- move.l a1,d1 ;name
- move.l #1006,d2 ;save
- jsr Open(a6)
- move.l d0,d4
- beq.b noop2
- move.l d4,d1
- move.l #prefbuf,d2
- move.l #preflen,d3
- jsr Write(a6)
- move.l d0,-(a7)
- move.l d4,d1
- jsr Close(a6)
- cmp.l (a7)+,d3
- bne.b noop2
- bra.b opok2
- noop2: bsr.w beep
- opok2:
-
- nogad16:cmp.w #GD_Gadget220,d0
- bne.w nogad22
- bchg #4,prefbuf+8+2
- nogad22:
- gadlp0: movem.l (a7)+,a1/a6
- jsr GT_ReplyIMsg(a6)
- bra.w gadepty
-
- leave:
-
- initfail:
- jsr CloseProject0Window
- jsr CloseDownScreen
-
- move.l 4.w,a6
- move.l _IntuitionBase(pc),a1
- jsr CloseLibrary(a6)
- noint: move.l _GadToolsBase(pc),a1
- jsr CloseLibrary(a6)
- nogad: move.l dosbase(pc),a1
- jsr CloseLibrary(a6)
- nodos: move.l wbmsg(pc),d7
- beq.b noreply
- jsr Forbid(a6)
- move.l d7,a1
- jsr ReplyMsg(a6)
- noreply:moveq #0,d0
- rts
-
- copystr:move.l (a0)+,a1
- move.l $22(a1),a1 ;strinfo
- move $0a(a1),d1
- subq.w #2,d1 ;size-1
- move.l (a1),a1 ;buffer
- cpfgd: move.b (a1)+,(a2)+
- dbf d1,cpfgd
- dbf d0,copystr
- rts
-
- getadr: move.l (a0)+,a1
- move.l $22(a1),a1 ;strinfo
- move.l (a1),a1 ;buffer
- rts
-
- update: lea prefbuf(pc),a2
- move.l #bmpid,(a2)+
- move.l #$deaddead,(a2)+ ;reserved
-
- tst.l (a2)+ ;cpu,mode,keymap,repeat
-
- lea Project0Gadgets+(GD_Gadget130*4),a0
- bsr.b getadr
- bsr.b cvrgb
- move.w d2,(a2)+ ;even
- bsr.b getadr
- bsr.b cvrgb
- move.w d2,(a2)+
-
- lea Project0Gadgets+(GD_Gadget00*4),a0 ;f1-f10
- moveq #10-1,d0
- bsr.w copystr
-
- lea Project0Gadgets+(GD_Gadget200*4),a0 ;path
- moveq #1-1,d0
- bra.w copystr
-
- cvrgb: moveq #0,d2
- moveq #3-1,d0
- cvrgb0: lsl.w #4,d2
- move.b (a1)+,d1
- sub.b #"0",d1
- bcs.b cverr
- cmp.b #9,d1
- bls.b cvok
- bclr #5,d1
- sub.b #"A"-"0"-10,d1
- bcs.b cverr
- cmp.b #15,d1
- bhi.b cverr
- cvok: or.b d1,d2
- dbf d0,cvrgb0
- cverr: tst.w d0
- rts
- beep: move.l _IntuitionBase(pc),a6
- move.l Scr,a0
- jmp DisplayBeep(a6)
-
- ldpref: move.l dosbase(pc),a6
- lea Project0Gadgets+(GD_Gadget170*4),a0
- bsr.w getadr
- move.l a1,d1 ;name
- move.l #1005,d2 ;load
- jsr Open(a6)
- move.l d0,d4
- beq.w noop
- move.l d4,d1
- move.l #prefbuf,d2
- move.l #preflen,d3
- jsr Read(a6)
- move.l d0,-(a7)
- move.l d4,d1
- jsr Close(a6)
- cmp.l (a7)+,d3
- bne.w noop
-
- lea prefbuf(pc),a2
- cmp.l #bmpid,(a2)+
- bne.w noop
- addq.w #4,a2 ;reserved
-
- lea Project0Gadgets+(GD_Gadget210*4),a0
- bsr.w setcyc
-
- lea Project0Gadgets+(GD_Gadget100*4),a0
- bsr.w setcyc
-
- lea Project0Gadgets+(GD_Gadget110*4),a0
- moveq #%1111,d0 ;bit0-3:language
- and.b (a2),d0
- move.b d0,cyctags+4+3
- bsr.w setcyc2
- move.l Project0Gadgets+(GD_Gadget220*4),a0
- lea chktags,a3
- btst #4,(a2)+ ;bit4:verify
- sne d0
- addq.b #1,d0
- move.b d0,4+3(a3)
- bsr.w setgad
-
- lea Project0Gadgets+(GD_Gadget120*4),a0
- bsr.w setcyc
-
- lea Project0Gadgets+(GD_Gadget130*4),a0
- move.w (a2)+,d0 ;col0
- lea strstr(pc),a3
- bsr.w rgbcnv
- exg a3,a2
- bsr.w setstr
- exg a3,a2
- move.w (a2)+,d0 ;col1
- lea strstr(pc),a3
- bsr.w rgbcnv
- exg a3,a2
- bsr.w setstr
- exg a3,a2
-
- lea Project0Gadgets+(GD_Gadget00*4),a0
- moveq #10-1,d0 ;f1-f10
- setstr0:bsr.w setstr
- dbf d0,setstr0
- lea Project0Gadgets+(GD_Gadget200*4),a0 ;path
- bra.w setstr
- noop: bra.w beep
-
- rgbcnv: moveq #3-1,d2
- rol.w #8,d0
- hexcnv: moveq #$0f,d1
- and.w d0,d1
- rol.w #4,d0
- move.b hextab(pc,d1.w),(a3)+
- dbf d2,hexcnv
- subq.w #3,a3
- rts
- hextab: dc.b "0123456789ABCDEF"
-
- setgad: movem.l d0-d1/a0-a2/a6,-(a7)
- move.l _GadToolsBase(pc),a6
- move.l Project0Wnd,a1
- sub.l a2,a2
- jsr GT_SetGadgetAttrsA(a6)
- movem.l (a7)+,d0-d1/a0-a2/a6
- rts
-
- chktags:dc.l $80080004,1
- dc.l 0
-
- setcyc: move.b (a2)+,cyctags+4+3
- setcyc2:movem.l d0-d1/a0-a3/a6,-(a7)
- move.l (a0),a0 ;gadget
- move.l _GadToolsBase(pc),a6
- move.l Project0Wnd,a1
- sub.l a2,a2
- lea cyctags(pc),a3
- jsr GT_SetGadgetAttrsA(a6)
- movem.l (a7)+,d0-d1/a0-a3/a6
- addq.w #4,a0
- rts
- cyctags:dc.l $8008000f,0 ;number
- dc.l 0
- setstr: movem.l d0-d1/a0-a1/a3/a6,-(a7)
- move.l (a0),a0 ;gadget
- move.l $22(a0),a1 ;strinfo
- move.w $0a(a1),d0 ;size+1
- subq.b #2,d0
- lea strstr(pc),a1
- setatr0:move.b (a2)+,(a1)+
- dbf d0,setatr0
- sf (a1)+
- move.l a2,-(a7)
- move.l _GadToolsBase(pc),a6
- move.l Project0Wnd,a1
- sub.l a2,a2
- lea strtags(pc),a3
- jsr GT_SetGadgetAttrsA(a6)
- move.l (a7)+,a2
- movem.l (a7)+,d0-d1/a0-a1/a3/a6
- addq.w #4,a0
- rts
- strtags:dc.l $8008002d,strstr ;string
- dc.l 0
- strstr: dcb.b 30,0
- dc.b 0
-
- even
- prefbuf:dcb.b preflen,0 ;even!
- gadname:dc.b "gadtools.library",0
- intname:dc.b "intuition.library",0
- dosname:dc.b "dos.library",0
- kickmsg:dc.b "This tool needs Kickstart V37 or higher!",10
- kicklen=*-kickmsg
- dc.b "$VER: BeerMon Preferences Editor V0.14",0
- even
- wbmsg: dc.l 0
- dosbase:dc.l 0
- _IntuitionBase:
- dc.l 0
- _GadToolsBase:
- dc.l 0
- bmlen: dc.l 0
-
- section "BeerBuf",bss
- bmbuf: ds.b bmmaxlen
-
- section "GadToolsBox",code
-
- Project0_CNT=23
-
- *
- * Source machine generated by GadToolsBox V2.0
- * which is (c) Copyright 1991-1993 Jaba Development
- *
- * GUI Designed by : -- Unnamed --
- *
-
- include 'exec/types.i'
- include 'intuition/intuition.i'
- include 'intuition/classes.i'
- include 'intuition/classusr.i'
- include 'intuition/imageclass.i'
- include 'intuition/gadgetclass.i'
- include 'libraries/gadtools.i'
- include 'graphics/displayinfo.i'
- include 'graphics/gfxbase.i'
-
- XREF _GadToolsBase
- XREF _IntuitionBase
- XREF _GfxBase
- XREF _SysBase
-
- OpenScreenTagList EQU -612
- OpenWindowTagList EQU -606
- CloseScreen EQU -66
- CloseWindow EQU -72
- PrintIText EQU -216
- LockPubScreen EQU -510
- UnlockPubScreen EQU -516
- SetMenuStrip EQU -264
- ClearMenuStrip EQU -54
- GetVisualInfoA EQU -126
- FreeVisualInfo EQU -132
- CreateContext EQU -114
- CreateGadgetA EQU -30
- GT_RefreshWindow EQU -84
- FreeGadgets EQU -36
- CreateMenusA EQU -48
- LayoutMenusA EQU -66
- FreeMenus EQU -54
- OpenDiskFont EQU -30
- CloseFont EQU -78
- DrawBevelBoxA EQU -120
- FreeClass EQU -714
- NewObjectA EQU -636
- DisposeObject EQU -642
- TextLength EQU -54
- CopyMem EQU -624
- FindTagItem EQU -30
- IntuiTextLength EQU -330
- ;Forbid EQU -132
- Permit EQU -138
-
- GD_Gadget00 EQU 0
- GD_Gadget10 EQU 1
- GD_Gadget20 EQU 2
- GD_Gadget30 EQU 3
- GD_Gadget40 EQU 4
- GD_Gadget50 EQU 5
- GD_Gadget60 EQU 6
- GD_Gadget70 EQU 7
- GD_Gadget80 EQU 8
- GD_Gadget90 EQU 9
- GD_Gadget100 EQU 10
- GD_Gadget110 EQU 11
- GD_Gadget120 EQU 12
- GD_Gadget130 EQU 13
- GD_Gadget140 EQU 14
- GD_Gadget150 EQU 15
- GD_Gadget160 EQU 16
- GD_Gadget170 EQU 17
- GD_Gadget180 EQU 18
- GD_Gadget190 EQU 19
- GD_Gadget200 EQU 20
- GD_Gadget210 EQU 21
- GD_Gadget220 EQU 22
-
- Scr:
- DC.L 0
- VisualInfo:
- DC.L 0
- PubScreenName:
- DC.L WBName
- WBName:
- DC.B 'Workbench',0
- CNOP 0,2
- Project0Wnd:
- DC.L 0
- Project0GList:
- DC.L 0
- Project0Gadgets:
- DCB.L 23,0
- BufNewGad:
- DC.W 0,0,0,0
- DC.L 0,0
- DC.W 0
- DC.L 0,0,0
- TD:
- DC.L TAG_DONE
- Project0Left:
- DC.W 113
- Project0Top:
- DC.W 11
- Project0Width:
- DC.W 419
- Project0Height:
- DC.W 169
-
- Project0GTypes:
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W CYCLE_KIND
- DC.W CYCLE_KIND
- DC.W CYCLE_KIND
- DC.W STRING_KIND
- DC.W STRING_KIND
- DC.W BUTTON_KIND
- DC.W BUTTON_KIND
- DC.W STRING_KIND
- DC.W BUTTON_KIND
- DC.W BUTTON_KIND
- DC.W STRING_KIND
- DC.W CYCLE_KIND
- DC.W CHECKBOX_KIND
-
- Project0NGads:
- DC.W 225,3,180,13
- DC.L Gadget00Text,0
- DC.W GD_Gadget00
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,18,180,13
- DC.L Gadget10Text,0
- DC.W GD_Gadget10
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,33,180,13
- DC.L Gadget20Text,0
- DC.W GD_Gadget20
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,48,180,13
- DC.L Gadget30Text,0
- DC.W GD_Gadget30
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,63,180,13
- DC.L Gadget40Text,0
- DC.W GD_Gadget40
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,78,180,13
- DC.L Gadget50Text,0
- DC.W GD_Gadget50
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,93,180,13
- DC.L Gadget60Text,0
- DC.W GD_Gadget60
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,108,180,13
- DC.L Gadget70Text,0
- DC.W GD_Gadget70
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,123,180,13
- DC.L Gadget80Text,0
- DC.W GD_Gadget80
- DC.L PLACETEXT_LEFT,0,0
- DC.W 225,138,180,13
- DC.L Gadget90Text,0
- DC.W GD_Gadget90
- DC.L PLACETEXT_LEFT,0,0
- DC.W 46,3,142,13
- DC.L Gadget100Text,0
- DC.W GD_Gadget100
- DC.L PLACETEXT_LEFT,0,0
- DC.W 62,33,126,13
- DC.L Gadget110Text,0
- DC.W GD_Gadget110
- DC.L PLACETEXT_LEFT,0,0
- DC.W 62,48,126,13
- DC.L Gadget120Text,0
- DC.W GD_Gadget120
- DC.L PLACETEXT_LEFT,0,0
- DC.W 62,18,44,13
- DC.L Gadget130Text,0
- DC.W GD_Gadget130
- DC.L PLACETEXT_LEFT,0,0
- DC.W 144,18,44,13
- DC.L Gadget140Text,0
- DC.W GD_Gadget140
- DC.L PLACETEXT_LEFT,0,0
- DC.W 7,93,81,13
- DC.L Gadget150Text,0
- DC.W GD_Gadget150
- DC.L PLACETEXT_IN,0,0
- DC.W 107,93,81,13
- DC.L Gadget160Text,0
- DC.W GD_Gadget160
- DC.L PLACETEXT_IN,0,0
- DC.W 62,108,126,13
- DC.L Gadget170Text,0
- DC.W GD_Gadget170
- DC.L PLACETEXT_LEFT,0,0
- DC.W 7,138,165,13
- DC.L Gadget180Text,0
- DC.W GD_Gadget180
- DC.L PLACETEXT_IN,0,0
- DC.W 7,152,165,13
- DC.L Gadget190Text,0
- DC.W GD_Gadget190
- DC.L PLACETEXT_IN,0,0
- DC.W 225,153,180,12
- DC.L Gadget200Text,0
- DC.W GD_Gadget200
- DC.L PLACETEXT_LEFT,0,0
- DC.W 46,63,142,13
- DC.L Gadget210Text,0
- DC.W GD_Gadget210
- DC.L PLACETEXT_LEFT,0,0
- DC.W 151,80,26,11
- DC.L Gadget220Text,0
- DC.W GD_Gadget220
- DC.L PLACETEXT_LEFT,0,0
-
- Project0GTags:
- DC.L GTST_String,Gadget00String
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_String,Gadget10String
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_String,Gadget20String
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_String,Gadget30String
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_String,Gadget40String
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTST_MaxChars,20
- DC.L TAG_DONE
- DC.L GTCY_Labels,Gadget100Labels
- DC.L TAG_DONE
- DC.L GTCY_Labels,Gadget110Labels
- DC.L TAG_DONE
- DC.L GTCY_Labels,Gadget120Labels
- DC.L TAG_DONE
- GadGet130Tags:
- DC.L GTST_String,Gadget130String
- DC.L GTST_MaxChars,3
- DC.L TAG_DONE
- GadGet140Tags:
- DC.L GTST_String,Gadget140String
- DC.L GTST_MaxChars,3
- DC.L TAG_DONE
- DC.L TAG_DONE
- DC.L TAG_DONE
- DC.L GTST_String,Gadget170String
- DC.L GTST_MaxChars,30
- DC.L TAG_DONE
- DC.L TAG_DONE
- DC.L TAG_DONE
- DC.L GTST_String,Gadget200String
- DC.L GTST_MaxChars,30
- DC.L TAG_DONE
- DC.L GTCY_Labels,Gadget210Labels
- DC.L TAG_DONE
- DC.L GTCB_Checked,1
- DC.L TAG_DONE
-
-
- Gadget00String:
- DC.B 'l 40000 0 2 s|',0
- CNOP 0,2
-
- Gadget10String:
- DC.B 'a 40000|',0
- CNOP 0,2
-
- Gadget20String:
- DC.B 'd 40000|',0
- CNOP 0,2
-
- Gadget30String:
- DC.B 'L oi 40000|',0
- CNOP 0,2
-
- Gadget40String:
- DC.B 'cd:|dir|',0
- CNOP 0,2
-
- Gadget130String:
- DC.B 'BBB',0
- CNOP 0,2
-
- Gadget140String:
- DC.B '222',0
- CNOP 0,2
-
- Gadget170String:
- DC.B 'S:BM.Prefs',0
- CNOP 0,2
-
- Gadget200String:
- DC.B ':C/BeerMon',0
- CNOP 0,2
-
- Gadget00Text:
- DC.B 'F1',0
-
- Gadget10Text:
- DC.B 'F2',0
-
- Gadget20Text:
- DC.B 'F3',0
-
- Gadget30Text:
- DC.B 'F4',0
-
- Gadget40Text:
- DC.B 'F5',0
-
- Gadget50Text:
- DC.B 'F6',0
-
- Gadget60Text:
- DC.B 'F7',0
-
- Gadget70Text:
- DC.B 'F8',0
-
- Gadget80Text:
- DC.B 'F9',0
-
- Gadget90Text:
- DC.B 'F10',0
-
- Gadget100Text:
- DC.B 'Mode',0
-
- Gadget110Text:
- DC.B 'Keymap',0
-
- Gadget120Text:
- DC.B 'Repeat',0
-
- Gadget130Text:
- DC.B 'Col0 ',0
-
- Gadget140Text:
- DC.B '1',0
-
- Gadget150Text:
- DC.B 'Load',0
-
- Gadget160Text:
- DC.B 'Save',0
-
- Gadget170Text:
- DC.B 'Prefs ',0
-
- Gadget180Text:
- DC.B 'Cancel',0
-
- Gadget190Text:
- DC.B 'Modify BeerMon',0
-
- Gadget200Text:
- DC.B 'Path',0
-
- Gadget210Text:
- DC.B 'CPU ',0
-
- Gadget220Text:
- DC.B 'Disk Verification',0
-
- CNOP 0,2
-
- Gadget100Labels:
- DC.L Gadget100Lab0
- DC.L Gadget100Lab1
- DC.L Gadget100Lab2
- DC.L Gadget100Lab3
- DC.L Gadget100Lab4
- DC.L 0
-
- Gadget110Labels:
- DC.L Gadget110Lab0
- DC.L Gadget110Lab1
- DC.L 0
-
- Gadget120Labels:
- DC.L Gadget120Lab0
- DC.L Gadget120Lab1
- DC.L Gadget120Lab2
- DC.L 0
-
- Gadget210Labels:
- DC.L Gadget210Lab0
- DC.L Gadget210Lab1
- DC.L 0
-
- Gadget100Lab0: DC.B 'PAL [640×256]',0
- Gadget100Lab1: DC.B 'PAL [640×512]',0
- Gadget100Lab2: DC.B 'NTSC [640×200]',0
- Gadget100Lab3: DC.B 'NTSC [640×400]',0
- Gadget100Lab4: DC.B 'VGA [640×480]',0
-
- CNOP 0,2
-
- Gadget110Lab0: DC.B 'German',0
- Gadget110Lab1: DC.B 'American',0
-
- CNOP 0,2
-
- Gadget120Lab0: DC.B 'Fast',0
- Gadget120Lab1: DC.B 'Medium',0
- Gadget120Lab2: DC.B 'Slow',0
-
- CNOP 0,2
-
- Gadget210Lab0: DC.B 'Standard',0
- Gadget210Lab1: DC.B 'Economy',0
-
- CNOP 0,2
-
- topaz8:
- DC.L topazFName8
- DC.W 8
- DC.B $00,$01
-
- topazFName8:
- DC.B 'topaz.font',0
- CNOP 0,2
-
- Project0WindowTags:
- Project0L:
- DC.L WA_Left,0
- Project0T:
- DC.L WA_Top,0
- Project0W:
- DC.L WA_Width,0
- Project0H:
- DC.L WA_Height,0
- DC.L WA_IDCMP,STRINGIDCMP!CYCLEIDCMP!BUTTONIDCMP!CHECKBOXIDCMP!IDCMP_REFRESHWINDOW
- DC.L WA_Flags,WFLG_DRAGBAR!WFLG_DEPTHGADGET!WFLG_SMART_REFRESH!WFLG_ACTIVATE!WFLG_RMBTRAP
- Project0WG:
- DC.L WA_Gadgets,0
- DC.L WA_Title,Project0WTitle
- DC.L WA_ScreenTitle,Project0STitle
- DC.L TAG_DONE
-
- Project0WTitle:
- DC.B 'BeerMon Preferences Editor V0.14',0
- CNOP 0,2
-
- Project0STitle:
- DC.B 'Written By Carnivore/BeerMacht',0
- CNOP 0,2
-
- SetupScreen
- movem.l d1-d3/a0-a2/a6,-(sp)
- move.l _IntuitionBase,a6
- move.l PubScreenName,a0
- jsr LockPubScreen(a6)
- move.l d0,Scr
- tst.l d0
- beq SError
- move.l Scr,a0
- move.l _GadToolsBase,a6
- lea.l TD,a1
- jsr GetVisualInfoA(a6)
- move.l d0,VisualInfo
- tst.l d0
- beq VError
- moveq #0,d0
- SDone:
- movem.l (sp)+,d1-d3/a0-a2/a6
- rts
- SError:
- moveq #1,d0
- bra.s SDone
- VError:
- moveq #2,d0
- bra.s SDone
-
- CloseDownScreen:
- movem.l d0-d1/a0-a1/a6,-(sp)
- move.l _GadToolsBase,a6
- move.l VisualInfo,a0
- cmpa.l #0,a0
- beq.s NoVis
- jsr FreeVisualInfo(a6)
- move.l #0,VisualInfo
- NoVis:
- move.l _IntuitionBase,a6
- suba.l a0,a0
- move.l Scr,a1
- cmpa.l #0,a1
- beq.s NoScr
- jsr UnlockPubScreen(a6)
- move.l #0,Scr
- NoScr:
- movem.l (sp)+,d0-d1/a0-a1/a6
- rts
-
- XDEF OpenProject0Window
-
- OpenProject0Window:
- movem.l d1-d4/a0-a4/a6,-(sp)
- move.l Scr,a0
- moveq #0,d3
- moveq #0,d2
- move.b sc_WBorLeft(a0),d2
- move.l sc_Font(a0),a1
- move.w ta_YSize(a1),d3
- addq.w #1,d3
- add.b sc_WBorTop(a0),d3
- move.l _GadToolsBase,a6
- lea.l Project0GList,a0
- jsr CreateContext(a6)
- move.l d0,a3
- tst.l d0
- beq Project0CError
- movem.w d2-d3,-(sp)
- moveq #0,d3
- lea.l Project0GTags,a4
- Project0GL:
- move.l _SysBase,a6
- lea.l Project0NGads,a0
- move.l d3,d0
- mulu #gng_SIZEOF,d0
- add.l d0,a0
- lea.l BufNewGad,a1
- moveq #gng_SIZEOF,d0
- jsr CopyMem(a6)
- lea.l BufNewGad,a0
- move.l VisualInfo,gng_VisualInfo(a0)
- move.l #topaz8,gng_TextAttr(a0)
- move.w gng_LeftEdge(a0),d0
- add.w (sp),d0
- move.w d0,gng_LeftEdge(a0)
- move.w gng_TopEdge(a0),d0
- add.w 2(sp),d0
- move.w d0,gng_TopEdge(a0)
- move.l _GadToolsBase,a6
- lea.l Project0GTypes,a0
- moveq #0,d0
- move.l d3,d1
- asl.l #1,d1
- add.l d1,a0
- move.w (a0),d0
- move.l a3,a0
- lea.l BufNewGad,a1
- move.l a4,a2
- jsr CreateGadgetA(a6)
- tst.l d0
- bne.s Project0COK
- movem.w (sp)+,d2-d3
- bra Project0CError
- Project0COK:
- move.l d0,a3
- move.l d3,d0
- asl.l #2,d0
- lea.l Project0Gadgets,a0
- add.l d0,a0
- move.l a3,(a0)
- Project0TL:
- tst.l (a4)
- beq.s Project0DN
- addq.w #8,a4
- bra.s Project0TL
- Project0DN:
- addq.w #4,a4
- addq.w #1,d3
- cmp.w #Project0_CNT,d3
- bmi Project0GL
- movem.w (sp)+,d2-d3
- move.l Project0GList,Project0WG+4
- moveq #0,d0
- move.w Project0Left,d0
- move.l d0,Project0L+4
- move.w Project0Top,d0
- move.l d0,Project0T+4
- move.w Project0Width,d0
- move.l d0,Project0W+4
- move.w Project0Height,d0
- add.w d3,d0
- move.l d0,Project0H+4
- move.l _IntuitionBase,a6
- suba.l a0,a0
- lea.l Project0WindowTags,a1
- jsr OpenWindowTagList(a6)
- move.l d0,Project0Wnd
- tst.l d0
- beq Project0WError
- move.l _GadToolsBase,a6
- move.l Project0Wnd,a0
- suba.l a1,a1
- jsr GT_RefreshWindow(a6)
- moveq #0,d0
- Project0Done:
- movem.l (sp)+,d1-d4/a0-a4/a6
- rts
- Project0CError:
- moveq #1,d0
- bra.s Project0Done
- Project0GError:
- moveq #2,d0
- bra.s Project0Done
- Project0WError:
- moveq #4,d0
- bra.s Project0Done
-
- CloseProject0Window:
- movem.l d0-d1/a0-a2/a6,-(sp)
- move.l _IntuitionBase,a6
- move.l Project0Wnd,a0
- cmpa.l #0,a0
- beq Project0NWnd
- jsr CloseWindow(a6)
- move.l #0,Project0Wnd
- Project0NWnd:
- move.l _GadToolsBase,a6
- move.l Project0GList,a0
- cmpa.l #0,a0
- beq Project0NGad
- jsr FreeGadgets(a6)
- move.l #0,Project0GList
- Project0NGad:
- movem.l (sp)+,d0-d1/a0-a2/a6
- rts
-
-
- end
-
- end
-