Subversion Repositories MB01 Project

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 - 1
  Tue Jul 17 11:00:19 2018                                                                                               Page    1
2
 
3
 
4
 
5
 
6
 
7
 
8
 
9
          2500 A.D. 65816 Macro Assembler #26960 - Version 5.02g
10
          -----------------------------------------------------
11
 
12
                       Input  Filename : src\F9\start.asm
13
                       Output Filename : obj\F9\start.obj
14
                       Listing Has Been Relocated
15
 
16
 
17
 2587                        	.LIST		on
18
 2588
19
 2589  F8FFB1                		.INCLUDE inc\dirp00.inc
20
 2590                        	;----------------------------------------------------------
21
 2591                        	; DIRP00.ASM
22
 2592                        	; PROGETTO: B1601
23
 2593                        	;
24
 2594                        	; Variabili in Direct Page $00
25
 2595                        	;----------------------------------------------------------
26
 2596
27
 2597                        	; sezione COMMON -- questo permette di includere il file in piu' file
28
 2598
29
 2599                        	.LIST on
30
 2600
31
 2601                        	DIRP00:	.SECTION page0, ref_only, common	;Direct-Page 00
32
 2602
33
 2603  000000                		.ABSOLUTE		;; inizia sempre da $00
34
 2604  000000                		.ORG		0x00
35
 2605  000000
36
 2606  000000  0000          	JiffyClk	.DW			; contatore 10ms 32 bit
37
 2607  000002  0000          			.DW
38
 2608  000004                	SysTmr		.DS	SYSTMRCNT	; system timer 0 (10ms)
39
 2609  000008                	SysTMF		.DS	SYSTMRCNT	; flag timer (80 -> start)
40
 2610  00000C  00            	Bnk0Flag	.DB			; <7>: flag test RAM banco 0 ok
41
 2611                        						; <6>: flag warm reset
42
 2612  00000D  00            	RTCFlag		.DB
43
 2613
44
 2614  00000E                	diskstat	.DS	2	; flag device on ata bus #0 & #1
45
 2615                        					; <7>: device ready
46
 2616                        					; <6>: compact flash device (C.F.)
47
 2617                        					; <5>: device identification ok
48
 2618                        					; <4>: MBR loaded
49
 2619                        					; <3>: valid signature in MBR
50
 2620                        					; <2>: first partition found&active
51
 2621                        					; <1>:
52
 2622                        					; <0>: valid partition flag
53
 2623
54
 2624                        					; <7>: device ready
55
 2625                        					; <6>: USB device
56
 2626                        					; <5>: compact flash device (C.F.)
57
 2627                        					; <4>: device identification ok
58
 2628                        					; <3>: MBR loaded
59
 2629                        					; <2>: first partition found&active
60
 2630                        					; <1>: always 1
61
 2631                        					; <0>: valid partition flag
62
 2632  000010
63
  Tue Jul 17 11:00:19 2018                                                                                               Page    2
64
 
65
 
66
 
67
 
68
 2633
69
 2634          00000E        	atadev		.EQU	diskstat
70
 2635
71
 2636  000010                	usbdev		.DS	2	; flag flash disk on usb bus #0
72
 2637                        					; <7>: device plugged and ready
73
 2638                        					; <6>: always 1
74
 2639                        					; <5>: device identification ok
75
 2640                        					; <4>: MBR loaded
76
 2641                        					; <3>: valid signature in MBR
77
 2642                        					; <2>: first partition found&active
78
 2643                        					; <1>:
79
 2644                        					; <0>: valid partition flag
80
 2645
81
 2646  000012                	diskmax		.DS	16	; disk max. sector's
82
 2647          000012        	atasec		.EQU	diskmax
83
 2648          00001A        	usbsec		.EQU	diskmax+8
84
 2649
85
 2650
86
 2651  000022                	atambr		.DS	8	; data for first partition found in mbr
87
 2652                        					; first 3 bytes for start sector of partition
88
 2653                        					; last byte for partition type
89
 2654  00002A                	usbmbr		.DS	8
90
 2655
91
 2656  000032                	ataprt		.DS	8	; total sec's of first partition
92
 2657  00003A                	usbprt		.DS	8	; total sec's of first partition
93
 2658
94
 2659
95
 2660  000042  00            	usb0ch		.DB	; usb0 (ch375/ch376) flag
96
 2661                        				; <7>: module on
97
 2662                        				; <6>: ch376 flag
98
 2663                        				; <5:0>: chip version
99
 2664
100
 2665  000043  00            	usb0st		.DB	; usb0 status
101
 2666                        				; <7>: usb0 host mode ok
102
 2667                        				; <6>: flash disk attached flag
103
 2668                        				; <5>: usb device attached
104
 2669
105
 2670  000044  00            	fdcdrv		.DB		; phisycal drive status (drive #0)
106
 2671                        					; <7>: disk format established in bit 0&1
107
 2672                        					; <6>: double step seek done
108
 2673                        					; <5>: trust format bit's (set after ok r/w)
109
 2674                        					; <4>: write protect bit (if disk in drive)
110
 2675                        					; <3>: don't care
111
 2676                        					; <2>: don't care
112
 2677                        					; <1>: HD disk if set else DD disk
113
 2678                        					; <0>: CBM format if set else IBM format
114
 2679
115
 2680  000045  00            	vdrive		.DB		; virtual drive status (ram disk, drive #1)
116
 2681                        					; <7>: disk format established in bit 0&1
117
 2682                        					; <6>: change disk simulation (after format)
118
 2683                        					; <5>: don't care
119
 2684                        					; <4>: write protect bit (under sw control)
120
 2685                        					; <3>: don't care
121
 2686                        					; <2>: don't care
122
 2687                        					; <1>: HD disk if set else DD disk
123
 2688                        					; <0>: CBM format if set else IBM format
124
 2689
125
  Tue Jul 17 11:00:19 2018                                                                                               Page    3
126
 
127
 
128
 
129
 
130
 2690  000046  00            	fdcctl		.DB		; fdc controller status
131
 2691                        					; <7>: drive is attached
132
 2692                        					; <6>: drive need recalibration (restore)
133
 2693                        					; <5>: FDC controller ok
134
 2694                        					; <4>: motor on
135
 2695                        					; <3>: dma is active
136
 2696                        					; <2>: dma chip ok (post routine)
137
 2697                        					; <1>: clock rate (1=HD,0=DD)
138
 2698                        					; <0>: disk ready
139
 2699
140
 2700  000047  00            	fdctrk		.DB		; fd: current seek track
141
 2701  000048  00            	fdcerr		.DB		; fd: last error code
142
 2702  000049  00            	ataerr		.DB		; ata: last error code
143
 2703  00004A  00            	ataxer		.DB		; ata: last extended error code
144
 2704
145
 2705  00004B  00            	CtrlBrk		.DB		; flag CTRL+BREAK (NMI)
146
 2706
147
 2707  00004C  0000          	MemTop		.DW		; top memoria RAM
148
 2708  00004E  00            			.DB		; banco top mem
149
 2709
150
 2710  00004F  00            	DflTxtIn	.DB		; device di default text input
151
 2711  000050  00            	DflTxtOut	.DB		; device di default text output
152
 2712
153
 2713  000051                	COPPtr		LP		; long pointer for COP decoding
154
 2714  000054  00            	COPIdx		.DB		; COP signature/index
155
 2715
156
 2716  000055  00            	BiosEnt		.DB		; flag accesso a bios setup
157
 2717
158
 2718                        	; variabili utilizzate da ACIA
159
 2719  000056                	spwrk		.DS	$30
160
 2720
161
 2721                        	; bios mem
162
 2722  000086  0000          	nsize		.DW	; dimensione blocco da allocare
163
 2723                        	;bsize		.DW	; dimensione vera blocco free
164
 2724  000088  0000          	splitsz		.DW	; dimensione blocco splittato
165
 2725  00008A  0000          	bfree		.DW	; puntatore blocco free
166
 2726  00008C  0000          	hdrptr		.DW	; puntatore header heap
167
 2727
168
 2728  00008E  0000          	pbrklv		.DW	; current break level of current process
169
 2729  000090  0000          	pbrkmin		.DW	; minimum breal level of current process
170
 2730  000092  0000          	pbrkmax		.DW	; maximum breal level of current process
171
 2731  000094
172
 2732                        	; bios temp. work area
173
 2733  000094                	bwrktmp		.DS	$28
174
 2734
175
 2735  0000BC  00            	coptmp		.DB	; temp. used while cop
176
 2736
177
 2737  0000BD  00            	tstser		.DB	; check ser/usb test board post
178
 2738                        				; <7>: VIA2 ok
179
 2739                        				; <6>: PICRAM ok
180
 2740                        				; <1>: UART 16C550 ok
181
 2741                        				; <0>: R65C51 ok
182
 2742
183
 2743
184
 2744                        	;crc16		.DW
185
 2745
186
 2746  0000BD                		.RELATIVE
187
  Tue Jul 17 11:00:19 2018                                                                                               Page    4
188
 
189
 
190
 
191
 
192
 2747
193
 2748                        		.ENDS
194
 2749
195
 2750          [01]          	.IFDEF		_ACIA_INC_
196
 2751                        		.INCLUDE INC\SP.INC
197
 2752          [00]          	.ENDIF
198
 2753
199
 2757                        	.LIST on
200
 2758
201
 2759                        		.STARTF9
202
 2760                        		.EXTERN fscbmint, fssetup
203
 2761
204
 2762                        		.LONGA	off
205
 2763                        		.LONGI	off
206
 2764
207
 2765
208
 2766  F90000                	osinit:
209
 2767  F90000  8B            		phb
210
 2768  F90001  A9 00         		lda	#0
211
 2769  F90003  48            		pha
212
 2770  F90004  AB            		plb
213
 2771  F90005                		ACC16			; set break memory limit
214
 2772  F90005  C2 20         		rep	#PMFLAG
215
 2773                        		.LONGA	on
216
 2774                        		.MNLIST
217
 2775  F90007  A9 00 08      		lda	#$0800
218
 2776  F9000A  85 90         		sta	pbrkmin
219
 2777  F9000C  85 8E         		sta	pbrklv
220
 2778  F9000E  A9 00 F0      		lda	#$F000
221
 2779  F90011  85 92         		sta	pbrkmax
222
 2780  F90013                		ACC08
223
 2781  F90013  E2 20         		sep	#PMFLAG
224
 2782                        		.LONGA	off
225
 2783                        		.MNLIST
226
 2784                        		;jsr	xbufint
227
 2785  F90015  20 E7 59      		jsr	fscbmint	; init cbm f.s. emulator
228
 2786  F90018  20 18 04      		jsr	fssetup
229
 2787  F9001B  AB            		plb
230
 2788  F9001C  6B            		rtl
231
 
232
 
233
             Lines Assembled : 2772                  Errors : 0
234
 
235
 
236