[ceffc47] | 1 | **************** MAP>TRA1 **************
|
---|
| 2 | * *
|
---|
| 3 | * TRANSCODEUR D'IMAGES TO.MAP > TRAMES *
|
---|
| 4 | * *
|
---|
| 5 | * par Michel SAINT-BRIANT * 15/03/1992 *
|
---|
| 6 | * *
|
---|
| 7 | * (c) A.S.C.I. Copyright 1992 *
|
---|
| 8 | * *
|
---|
| 9 | ****************************************
|
---|
| 10 |
|
---|
| 11 | * TRANSCODAGE D'UNE IMAGE THOMSON EN UNE
|
---|
| 12 | * IMAGE DE 80 COLONNES EN 16 TRAMES /65
|
---|
| 13 |
|
---|
| 14 | ORG $9800
|
---|
| 15 |
|
---|
| 16 | PSHS A,B,CC,DP,X,Y,U
|
---|
| 17 |
|
---|
| 18 | LDA $605F TYPE DE CONSOLE
|
---|
| 19 | LSLA
|
---|
| 20 | STA TYPE
|
---|
| 21 |
|
---|
| 22 | * ETABLISSEMENT DE LA TABLE DES GRIS
|
---|
| 23 |
|
---|
| 24 | LDU #PALET+32
|
---|
| 25 | LDA #15
|
---|
| 26 | LIPAL LDX #$FFFF
|
---|
| 27 | LDY #0
|
---|
| 28 | JSR $EC00
|
---|
| 29 | STX ,--U
|
---|
| 30 | DECA
|
---|
| 31 | BPL LIPAL
|
---|
| 32 |
|
---|
| 33 | LDX #PALET
|
---|
| 34 | LDY #TABGRI
|
---|
| 35 | NOUPAL LDD ,X
|
---|
| 36 | BITA #$10
|
---|
| 37 | BNE CALGRI
|
---|
| 38 | COMA
|
---|
| 39 | COMB
|
---|
| 40 | STD ,X
|
---|
| 41 | CALGRI CLRA
|
---|
| 42 | ANDB #$F0
|
---|
| 43 | LSRB
|
---|
| 44 | LSRB
|
---|
| 45 | TFR D,U
|
---|
| 46 | LDD ,X++
|
---|
| 47 | ANDA #$0F
|
---|
| 48 | LEAU A,U
|
---|
| 49 | ANDB #$0F
|
---|
| 50 | LSLB
|
---|
| 51 | LEAU B,U
|
---|
| 52 | TFR U,D
|
---|
| 53 | STB ,Y+
|
---|
| 54 | CMPX #PALET+32
|
---|
| 55 | BLO NOUPAL
|
---|
| 56 |
|
---|
| 57 | * CALCUL DES TRAMES EN FONCTION DE L'IN-
|
---|
| 58 | * TENSITE LUMINEUSE DANS TABGRI (16/65)
|
---|
| 59 |
|
---|
| 60 | LDU #TABGRI
|
---|
| 61 | LDX #TRAME
|
---|
| 62 | LDY #TRAINI
|
---|
| 63 | LDB #16
|
---|
| 64 | NOUTRA LDA #105
|
---|
| 65 | SUBA ,U+
|
---|
| 66 | PSHS A,B,X,U
|
---|
| 67 | LDB #158
|
---|
| 68 | MUL
|
---|
| 69 | ANDA #$7C
|
---|
| 70 | LEAU A,Y
|
---|
| 71 | LDB #4
|
---|
| 72 | TRA0 LDA ,U
|
---|
| 73 | LSLA
|
---|
| 74 | LSLA
|
---|
| 75 | LSLA
|
---|
| 76 | LSLA
|
---|
| 77 | ORA ,U+
|
---|
| 78 | STA 4,X
|
---|
| 79 | STA ,X+
|
---|
| 80 | DECB
|
---|
| 81 | BNE TRA0
|
---|
| 82 | LDA ,S
|
---|
| 83 | ANDA #3
|
---|
| 84 | BEQ FINTRA
|
---|
| 85 | LDB #3
|
---|
| 86 | TRA1 LDA B,U
|
---|
| 87 | LSLA
|
---|
| 88 | LSLA
|
---|
| 89 | LSLA
|
---|
| 90 | LSLA
|
---|
| 91 | ORA B,X
|
---|
| 92 | STA B,X
|
---|
| 93 | DECB
|
---|
| 94 | BPL TRA1
|
---|
| 95 | LEAX -4,X
|
---|
| 96 | LDA ,S
|
---|
| 97 | ANDA #3
|
---|
| 98 | CMPA #2
|
---|
| 99 | BLO FINTRA
|
---|
| 100 | LDB #3
|
---|
| 101 | TRA2 LDA B,U
|
---|
| 102 | ORA B,X
|
---|
| 103 | STA B,X
|
---|
| 104 | DECB
|
---|
| 105 | BPL TRA2
|
---|
| 106 | LEAX 4,X
|
---|
| 107 | LDA ,S
|
---|
| 108 | ANDA #3
|
---|
| 109 | CMPA #3
|
---|
| 110 | BLO FINTRA
|
---|
| 111 | LDB #3
|
---|
| 112 | TRA3 LDA B,U
|
---|
| 113 | ORA B,X
|
---|
| 114 | STA B,X
|
---|
| 115 | DECB
|
---|
| 116 | BPL TRA3
|
---|
| 117 | FINTRA PULS A,B,X,U
|
---|
| 118 | LEAX 8,X
|
---|
| 119 | DECB
|
---|
| 120 | BNE NOUTRA
|
---|
| 121 |
|
---|
| 122 | * RECOPIE DE L'IMAGE EN $A000/$DFFF
|
---|
| 123 | * EN ENTRELACE
|
---|
| 124 |
|
---|
| 125 | LDB #$14
|
---|
| 126 | JSR $E803
|
---|
| 127 | LDA $E7C3
|
---|
| 128 | ORA #$01
|
---|
| 129 | STA $E7C3
|
---|
| 130 | LDX #$4000
|
---|
| 131 | LDY #$A000
|
---|
| 132 | COPEC0 LDD ,X++
|
---|
| 133 | STA ,Y++
|
---|
| 134 | STB ,Y++
|
---|
| 135 | CMPX #$5F40
|
---|
| 136 | BLO COPEC0
|
---|
| 137 | LDA $E7C3
|
---|
| 138 | ANDA #$FE
|
---|
| 139 | STA $E7C3
|
---|
| 140 | LDX #$4000
|
---|
| 141 | LDY #$A001
|
---|
| 142 | COPEC1 LDD ,X++
|
---|
| 143 | STA ,Y++
|
---|
| 144 | STB ,Y++
|
---|
| 145 | CMPX #$5F40
|
---|
| 146 | BLO COPEC1
|
---|
| 147 |
|
---|
| 148 | LDX #$A000
|
---|
| 149 | LDY #TRAME
|
---|
| 150 | LDD #$2807
|
---|
| 151 | STA COLON
|
---|
| 152 | STB LIGNE
|
---|
| 153 |
|
---|
| 154 | NEWOCT LDD #$0000
|
---|
| 155 | PSHS B,A
|
---|
| 156 | LDA #$C0
|
---|
| 157 | STA FILTRE
|
---|
| 158 | TST TYPE
|
---|
| 159 | LBEQ MODTO7
|
---|
| 160 | LBMI MODB16
|
---|
| 161 |
|
---|
| 162 | MODBM4 CLRA
|
---|
| 163 | ASL ,X
|
---|
| 164 | ROLA
|
---|
| 165 | ASL 1,X
|
---|
| 166 | ROLA
|
---|
| 167 | LSLA
|
---|
| 168 | LSLA
|
---|
| 169 | LSLA
|
---|
| 170 | LEAU A,Y
|
---|
| 171 | LDA LIGNE
|
---|
| 172 | LDA A,U
|
---|
| 173 | ANDA FILTRE
|
---|
| 174 | ORA ,S
|
---|
| 175 | STA ,S
|
---|
| 176 | LSR FILTRE
|
---|
| 177 | LSR FILTRE
|
---|
| 178 | BNE MODBM4
|
---|
| 179 | LDA #$C0
|
---|
| 180 | STA FILTRE
|
---|
| 181 | MODBM5 CLRA
|
---|
| 182 | ASL ,X
|
---|
| 183 | ROLA
|
---|
| 184 | ASL 1,X
|
---|
| 185 | ROLA
|
---|
| 186 | LSLA
|
---|
| 187 | LSLA
|
---|
| 188 | LSLA
|
---|
| 189 | LEAU A,Y
|
---|
| 190 | LDA LIGNE
|
---|
| 191 | LDA A,U
|
---|
| 192 | ANDA FILTRE
|
---|
| 193 | ORA 1,S
|
---|
| 194 | STA 1,S
|
---|
| 195 | LSR FILTRE
|
---|
| 196 | LSR FILTRE
|
---|
| 197 | BNE MODBM5
|
---|
| 198 | LBRA FINMOD
|
---|
| 199 |
|
---|
| 200 | MODTO7 LDA 1,X
|
---|
| 201 | BITA #$40
|
---|
| 202 | BEQ OCTET0
|
---|
| 203 | ANDA #$38
|
---|
| 204 | BRA OCTET1
|
---|
| 205 | OCTET0 ORA #$40
|
---|
| 206 | OCTET1 ANDA #$78
|
---|
| 207 | STA FORM0+1
|
---|
| 208 | STA FORM1+1
|
---|
| 209 | LDA 1,X
|
---|
| 210 | ANDA #$07
|
---|
| 211 | TST 1,X
|
---|
| 212 | BMI OCTET2
|
---|
| 213 | ORA #$08
|
---|
| 214 | OCTET2 LSLA
|
---|
| 215 | LSLA
|
---|
| 216 | LSLA
|
---|
| 217 | STA FOND0+1
|
---|
| 218 | STA FOND1+1
|
---|
| 219 | FORM0 LDA #$00
|
---|
| 220 | ASL ,X
|
---|
| 221 | BCS POINT0
|
---|
| 222 | FOND0 LDA #$00
|
---|
| 223 | POINT0 LEAU A,Y
|
---|
| 224 | LDA LIGNE
|
---|
| 225 | LDA A,U
|
---|
| 226 | ANDA FILTRE
|
---|
| 227 | ORA ,S
|
---|
| 228 | STA ,S
|
---|
| 229 | LSR FILTRE
|
---|
| 230 | LSR FILTRE
|
---|
| 231 | BNE FORM0
|
---|
| 232 | LDA #$C0
|
---|
| 233 | STA FILTRE
|
---|
| 234 | FORM1 LDA #$00
|
---|
| 235 | ASL ,X
|
---|
| 236 | BCS POINT1
|
---|
| 237 | FOND1 LDA #$00
|
---|
| 238 | POINT1 LEAU A,Y
|
---|
| 239 | LDA LIGNE
|
---|
| 240 | LDA A,U
|
---|
| 241 | ANDA FILTRE
|
---|
| 242 | ORA 1,S
|
---|
| 243 | STA 1,S
|
---|
| 244 | LSR FILTRE
|
---|
| 245 | LSR FILTRE
|
---|
| 246 | BNE FORM1
|
---|
| 247 | BRA FINMOD
|
---|
| 248 |
|
---|
| 249 | MODB16 LDA ,X
|
---|
| 250 | ANDA #$F0
|
---|
| 251 | LSRA
|
---|
| 252 | LEAU A,Y
|
---|
| 253 | LDA LIGNE
|
---|
| 254 | LDA A,U
|
---|
| 255 | ANDA #$F0
|
---|
| 256 | ORA ,S
|
---|
| 257 | STA ,S
|
---|
| 258 | LDA ,X
|
---|
| 259 | ANDA #$0F
|
---|
| 260 | LSLA
|
---|
| 261 | LSLA
|
---|
| 262 | LSLA
|
---|
| 263 | LEAU A,Y
|
---|
| 264 | LDA LIGNE
|
---|
| 265 | LDA A,U
|
---|
| 266 | ANDA #$0F
|
---|
| 267 | ORA ,S
|
---|
| 268 | STA ,S
|
---|
| 269 | LDA 1,X
|
---|
| 270 | ANDA #$F0
|
---|
| 271 | LSRA
|
---|
| 272 | LEAU A,Y
|
---|
| 273 | LDA LIGNE
|
---|
| 274 | LDA A,U
|
---|
| 275 | ANDA #$F0
|
---|
| 276 | ORA 1,S
|
---|
| 277 | STA 1,S
|
---|
| 278 | LDA 1,X
|
---|
| 279 | ANDA #$0F
|
---|
| 280 | LSLA
|
---|
| 281 | LSLA
|
---|
| 282 | LSLA
|
---|
| 283 | LEAU A,Y
|
---|
| 284 | LDA LIGNE
|
---|
| 285 | LDA A,U
|
---|
| 286 | ANDA #$0F
|
---|
| 287 | ORA 1,S
|
---|
| 288 | STA 1,S
|
---|
| 289 |
|
---|
| 290 | FINMOD PULS A,B
|
---|
| 291 | STD ,X++
|
---|
| 292 | CMPX #$DE80
|
---|
| 293 | BHS AFFTO
|
---|
| 294 | DEC COLON
|
---|
| 295 | LBNE NEWOCT
|
---|
| 296 | LDA #$28
|
---|
| 297 | STA COLON
|
---|
| 298 | DEC LIGNE
|
---|
| 299 | LBPL NEWOCT
|
---|
| 300 | LDA #7
|
---|
| 301 | STA LIGNE
|
---|
| 302 | LBRA NEWOCT
|
---|
| 303 |
|
---|
| 304 | AFFTO LDB #$1B
|
---|
| 305 | JSR $E803
|
---|
| 306 | LDB #$5B
|
---|
| 307 | JSR $E803
|
---|
| 308 | LDB #$1B
|
---|
| 309 | JSR $E803
|
---|
| 310 | LDB #$40
|
---|
| 311 | JSR $E803
|
---|
| 312 | LDB #$1B
|
---|
| 313 | JSR $E803
|
---|
| 314 | LDB #$57
|
---|
| 315 | JSR $E803
|
---|
| 316 | LDB #$0C
|
---|
| 317 | JSR $E803
|
---|
| 318 | LDB #$14
|
---|
| 319 | JSR $E803
|
---|
| 320 | LDX #PALORI
|
---|
| 321 | LDA #$FF
|
---|
| 322 | JSR $EC00
|
---|
| 323 | LDX #$A001
|
---|
| 324 | LDY #$4000
|
---|
| 325 | LDA $E7C3
|
---|
| 326 | ANDA #$FE
|
---|
| 327 | STA $E7C3
|
---|
| 328 | RESULB LDA ,X++
|
---|
| 329 | LDB ,X++
|
---|
| 330 | STD ,Y++
|
---|
| 331 | CMPX #$DE80
|
---|
| 332 | BLO RESULB
|
---|
| 333 | LDX #$A000
|
---|
| 334 | LDY #$4000
|
---|
| 335 | LDA $E7C3
|
---|
| 336 | ORA #1
|
---|
| 337 | STA $E7C3
|
---|
| 338 | RESULA LDA ,X++
|
---|
| 339 | LDB ,X++
|
---|
| 340 | STD ,Y++
|
---|
| 341 | CMPX #$DE80
|
---|
| 342 | BLO RESULA
|
---|
| 343 |
|
---|
| 344 | FIN PULS A,B,DP,CC,X,Y,U,PC
|
---|
| 345 |
|
---|
| 346 | LIGNE FCB 0
|
---|
| 347 | COLON FCB 0
|
---|
| 348 | FILTRE FCB 0
|
---|
| 349 | PALET RMB 32
|
---|
| 350 | TABGRI RMB 16
|
---|
| 351 |
|
---|
| 352 | PALORI FDB 4095,0,240,255,3840,3855
|
---|
| 353 | FDB 4080,4095,1911,826,931,938
|
---|
| 354 | FDB 2611,2618,3815,123
|
---|
| 355 | TYPE FCB 0
|
---|
| 356 | TRAINI FCB 0,0,0,0,0,0,8,0
|
---|
| 357 | FCB 2,0,8,0,2,0,10,0
|
---|
| 358 | FCB 10,0,10,0,10,0,10,4
|
---|
| 359 | FCB 10,1,10,4,10,1,10,5
|
---|
| 360 | FCB 10,5,10,5,10,5,14,5
|
---|
| 361 | FCB 11,5,14,5,11,5,15,5
|
---|
| 362 | FCB 15,5,15,5,15,5,15,13
|
---|
| 363 | FCB 15,7,15,13,15,7,15,15
|
---|
| 364 | FCB 15,15,15,15
|
---|
| 365 | TRAME RMB 16*8
|
---|
| 366 |
|
---|
| 367 | END
|
---|