Lines Matching +full:1 +full:a0
53 * 1) Remove register dependency through-out the file.
306 CPUTYPE_040 = 1 /* indicates an 040 */
325 TTR_FCB1 = 0x0020 /* function code base bit 1 */
328 TTR_FCM1 = 0x0002 /* function code mask bit 1 */
431 move_stack "(\nr-1)",\arg2,\arg3,\arg4
448 func_define mmu_fixup_page_mmu_cache,1
451 func_define mmu_get_root_table_entry,1
470 func_define serial_putc,1
471 func_define console_putc,1
499 func_define putn,1
555 the console is running. Writing a 1 bit turns the corresponding LED
573 bras 1f /* Jump over bootinfo version numbers */
585 1: jra __start
605 movel %a0@,%a1@
609 movel %a0@,%a1@
613 movel %a0@,%a1@
617 movel %a0@,%a1@
631 movel %a0@,%a1@
635 movel %a0@,%a1@
639 movel %a0@,%a1@
643 movel %a0@,%a1@
647 movel %a0@,%a1@
657 movel %a0@,%a1@
677 jeq 1f
681 1:
702 lea %pc@(L(cputype)),%a0
703 movel %d1,%a0@
739 is_not_060(1f)
743 1:
751 lea %pc@(m68k_supervisor_cachemode),%a0
752 movel %d0,%a0@
753 lea %pc@(m68k_pgtable_cachemode),%a0
754 movel %d1,%a0@
787 jbmi 1f
788 movel %a0@,%d3
789 lea %pc@(atari_mch_type),%a0
790 movel %d3,%a0@
791 1:
796 jbne 1f
798 1: lea %pc@(L(iobase)),%a0
799 movel %d0,%a0@
817 jbmi 1f
818 movel %a0@,%d3
819 lea %pc@(vme_brdtype),%a0
820 movel %d3,%a0@
821 1:
831 jpl 1f
837 movel %sp@+,%a0
838 1:
841 movel %a0@+,%a1@+
842 movel %a0@+,%a1@+
843 movel %a0@+,%a1@+
844 movel %a0@+,%a1@+
845 movel %a0@+,%a1@+
846 movel %a0@+,%a1@+
847 movel %a0@+,%a1@+
848 movel %a0@+,%a1@+
861 jbmi 1f
862 movel %a0@,%d3
863 lea %pc@(L(uartbase)),%a0
864 movel %d3,%a0@
867 jbmi 1f
868 movel %a0@,%d3
869 lea %pc@(L(uart_scode)),%a0
870 movel %d3,%a0@
871 1:
906 lea %pc@(L(phys_kernel_start)),%a0
910 movel %a1,%a0@
925 movel %a0@(4),%d0
928 jls 1f
929 lsrl #1,%d1
931 jls 1f
932 lsrl #1,%d1
933 1:
934 lea %pc@(m68k_init_mapped_size),%a0
935 movel %d1,%a0@
952 is_not_040_or_060(1f)
962 mmu_map_tt #1,#0x40000000,#0x20000000,#_PAGE_NOCACHE_S
966 1:
971 mmu_map_tt #1,#0x40000000,#0x20000000,#_PAGE_NOCACHE030
1005 jbne 1f
1007 1: movel %d0,%d3
1042 mmu_map_tt #1,#0xff000000,#0x01000000,#_PAGE_NOCACHE_S
1057 is_040(1f)
1066 1:
1088 mmu_map_tt #1,#0xe0000000,#0x20000000,#_PAGE_NOCACHE030
1112 mmu_map_tt #1,#0xe0000000,#0x20000000,#_PAGE_NOCACHE_S
1132 mmu_map_tt #1,#0xe0000000,#0x20000000,#_PAGE_NOCACHE_S
1175 is_not_040_or_060(1f)
1179 1:
1196 mmu_map_tt #1,#0xf8000000,#0x08000000,%d3
1220 andl #PTR_TABLE_SIZE-1, %d0
1221 mmu_get_ptr_table_entry %a0,%d0
1226 andl #PAGE_TABLE_SIZE-1, %d0
1227 mmu_get_page_table_entry %a0,%d0
1233 movel #((0x200000 >> 13)-1), %d1
1235 1:
1237 movel %d3,%a0@+
1239 movel %d3,%a0@+
1241 dbra %d1,1b
1244 mmu_map_tt #1,#0x40000000,#0x40000000,#_PAGE_NOCACHE_S
1252 mmu_map_tt #1,#0xFF000000,#0x01000000,#_PAGE_NOCACHE_S
1298 lea %pc@(_stext),%a0
1299 subl %d0,%a0
1300 mmu_fixup_page_mmu_cache %a0
1302 movel %pc@(L(kernel_end)),%a0
1303 subl %d0,%a0
1307 1:
1308 mmu_fixup_page_mmu_cache %a0
1309 addw #PAGESIZE,%a0
1311 cmpl %a0,%a1
1312 jgt 1b
1329 * 1. The Program Counter falls within the logical address space of
1340 * It doesn't take a wiz kid to figure you want 1.A.
1342 * There are two possible 1.A. states (we now ignore the other above states):
1366 * stack!). This temporary mapping will only require 1 pointer table
1395 is_not_amiga(1f)
1398 1:
1402 is_not_atari(1f)
1405 1:
1409 is_not_mac(1f)
1421 1:
1434 is_040(1f)
1441 1: movew #0,0xf05f400e
1447 is_not_sun3x(1f)
1451 1:
1455 is_not_apollo(1f)
1461 1:
1491 moveq #1,%d0
1533 * Returns: d0: size (-1 if not found)
1534 * a0: data pointer (end-of-records if not found)
1539 lea %pc@(_end),%a0
1540 1: tstw %a0@(BIR_TAG)
1542 cmpw %a0@(BIR_TAG),%d0
1544 addw %a0@(BIR_SIZE),%a0
1545 jra 1b
1547 movew %a0@(BIR_SIZE),%d0
1548 lea %a0@(BIR_DATA),%a0
1550 3: moveq #-1,%d0
1551 lea %a0@(BIR_SIZE),%a0
1635 #define MMU_PRINT_INVALID -1
1636 #define MMU_PRINT_VALID 1
1639 #define putZc(z,n) jbne 1f; putc z; jbra 2f; 1: putc n; 2:
1641 func_start mmu_print,%a0-%a6/%d0-%d7
1644 lea %pc@(L(mmu_print_data)),%a0
1645 movel #MMU_PRINT_UNINITED,%a0@(mmu_next_valid)
1664 subql #1,%d5 | they (might) work
1666 1: tstl %d5
1668 subq #1,%d5
1670 btst #1,%d7
1671 jbeq 1b
1680 subq #1,%d4
1682 btst #1,%d7
1692 subq #1,%d3
1698 subq #1,%d2
1702 movel #8+1+8+1+1,%d2
1710 movel #8+1,%d2
1716 jbra 1b
1720 movel %a5,%a0 /* a0 has the address of the root table ptr */
1727 movel %a0@+,%d6
1728 btst #1,%d6
1740 btst #1,%d6
1766 addq #1,%d2
1771 addq #1,%d1
1776 addq #1,%d0
1784 jbeq 1f /* No, bail out */
1794 1:
1798 jbeq 1f /* No, bail out */
1808 1:
1844 movel %d0,%a0
1850 movel %a0@+,%d6
1851 btst #1,%d6 /* is it a table ptr? */
1854 jbeq 1f /* no */
1857 1:
1868 btst #1,%d6 /* is it a table ptr? */
1871 jbeq 1f /* no */
1874 1:
1893 addq #1,%d2
1898 addq #1,%d1
1903 addq #1,%d0
1923 moveml %a0/%d7,%sp@-
1925 lea %pc@(L(mmu_print_data)),%a0
1926 tstl %a0@(mmu_next_valid)
1929 movel #MMU_PRINT_INVALID,%a0@(mmu_next_valid)
1936 moveml %sp@+,%a0/%d7
1941 moveml %d0-%d7/%a0,%sp@-
1943 lea %pc@(L(mmu_print_data)),%a0
1945 tstl %a0@(mmu_next_valid)
1948 cmpl %a0@(mmu_next_physical),%d1
1960 movel #MMU_PRINT_VALID,%a0@(mmu_next_valid)
1962 movel %d1,%a0@(mmu_next_physical)
1967 addl %d7,%a0@(mmu_next_physical)
1970 moveml %sp@+,%d0-%d7/%a0
1976 is_not_amiga(1f)
1979 1:
1991 is_not_060(1f)
1994 1:
2014 func_start mmu_map_tt,%d0/%d1/%a0,4
2033 moveq #-1,%d0
2035 lsrl #1,%d0
2057 jeq 1f
2060 1: lea STACK,%a0
2062 movel %d1,%a0@
2065 jne 1f
2066 pmove %a0@,%tt0
2068 1: pmove %a0@,%tt1
2081 jne 1f
2085 1: movec %d1,%itt1
2116 func_start mmu_map,%d0-%d4/%a0-%a4
2135 subql #1,%a4
2185 andl #PTR_TABLE_SIZE-1,%d0
2186 mmu_get_ptr_table_entry %a0,%d0
2193 andl #PAGE_TABLE_SIZE-1,%d0
2194 mmu_get_page_table_entry %a0,%d0
2198 tstl %a0@
2203 movel %a2,%a0@
2210 lea %a3@(-1),%a0
2211 cmpl %a0,%a4
2227 andl #(PTR_TABLE_SIZE*PAGE_TABLE_SIZE*PAGESIZE-1)&(-ROOT_TABLE_SIZE),%d0
2228 jne 1f
2232 lea %a3@(PTR_TABLE_SIZE*PAGE_TABLE_SIZE*PAGESIZE-1),%a1
2234 jcs 1f
2236 addql #1,%a1
2240 tstl %a0@
2250 movel %a2,%a0@
2255 1:
2261 andl #PTR_TABLE_SIZE-1,%d0
2262 mmu_get_ptr_table_entry %a0,%d0
2266 tstl %a0@
2275 movel %a2,%a0@
2283 lea %a3@(-1),%a0
2284 cmpl %a0,%a4
2306 func_start mmu_fixup_page_mmu_cache,%d0/%a0
2323 andl #PTR_TABLE_SIZE-1,%d0
2324 mmu_get_ptr_table_entry %a0,%d0
2331 andl #PAGE_TABLE_SIZE-1,%d0
2332 mmu_get_page_table_entry %a0,%d0
2334 movel %a0@,%d0
2337 movel %d0,%a0@
2350 func_start mmu_temp_map,%d0/%d1/%a0/%a1
2368 movel %a0@,%d0
2370 jcc 1f
2377 movel %d0,%a0@
2379 1:
2384 movel %d0,%a0
2391 andl #PTR_TABLE_SIZE-1,%d0
2392 lea %a0@(%d0*4),%a0
2393 dputn %a0
2397 movel %a0@,%d0
2398 jne 1f
2407 movel %d0,%a0@
2409 1:
2414 movel %d0,%a0
2421 andl #PAGE_TABLE_SIZE-1,%d0
2422 lea %a0@(%d0*4),%a0
2423 dputn %a0
2430 movel %d0,%a0@
2437 func_start mmu_engage,%d0-%d2/%a0-%a3
2439 moveq #ROOT_TABLE_SIZE-1,%d0
2441 lea %pc@(L(kernel_pgdir_ptr)),%a0
2442 movel %a0@,%a2
2444 movel %a1,%a0@
2445 movel %a2,%a0
2446 1:
2447 movel %a0@+,%a1@+
2448 dbra %d0,1b
2450 lea %pc@(L(temp_mmap_mem)),%a0
2451 movel %a1,%a0@
2453 movew #PAGESIZE-1,%d0
2454 1:
2456 dbra %d0,1b
2458 lea %pc@(1b),%a0
2459 movel #1b,%a1
2461 cmpl %a0,%a1
2462 jeq 1f
2464 mmu_temp_map %a0,%a0
2465 mmu_temp_map %a0,%a1
2467 addw #PAGESIZE,%a0
2469 mmu_temp_map %a0,%a0
2470 mmu_temp_map %a0,%a1
2471 1:
2487 jmp 1f:l
2488 1: nop
2501 lea %pc@(L(mmu_engage_030_temp)),%a0
2502 movel #0x80000002,%a0@
2503 movel %a3,%a0@(4)
2506 pmove %a0@,%srp
2512 movel #0x82c07760,%a0@(8)
2513 pmove %a0@(8),%tc /* enable the MMU */
2514 jmp 1f:l
2515 1: movel %a2,%a0@(4)
2518 pmove %a0@,%srp
2540 movel %pc@(L(kernel_pgdir_ptr)),%a0
2541 tstl %a0
2551 addw #PAGESIZE-1,%a0
2552 movel %a0,%d0
2557 lea %pc@(L(memory_start)),%a0
2558 movel %d0,%a0@
2559 lea %pc@(L(kernel_end)),%a0
2560 movel %d0,%a0@
2566 lea %pc@(_stext),%a0
2568 movel %a0,%a1@
2572 addql #1,%a1@
2576 movel %a0,%a1
2577 movew #PAGESIZE/4-1,%d0
2578 1:
2580 dbra %d0,1b
2583 movel %a0,%a1@
2585 dputn %a0
2589 lea %a0@(%d0*4),%a0
2592 dputn %a0
2609 movel ARG1,%a0
2610 movel %a0@,%d0
2616 lea %pc@(L(mmu_num_pointer_tables)),%a0
2617 movel %a0@,%d0
2618 addql #1,%a0@
2624 jne 1f
2629 movel %a0,%a1@
2630 1:
2641 movel ARG1,%a0
2643 movel %d0,%a0@
2648 movel %d0,%a0
2650 lea %a0@(%d0*4),%a0
2653 dputn %a0
2669 movel ARG1,%a0
2670 movel %a0@,%d0
2678 addw #_PAGE_TABLE+_PAGE_ACCESSED,%a0
2688 moveq #PAGESIZE/PAGE_TABLE_SIZE/4-1,%d0
2689 1:
2690 movel %a0,%a1@+
2691 lea %a0@(PAGE_TABLE_SIZE*4),%a0
2692 dbra %d0,1b
2696 movel ARG1,%a0
2697 movel %a0@,%d0
2702 movel %d0,%a0
2704 lea %a0@(%d0*4),%a0
2707 dputn %a0
2724 lea %pc@(L(memory_start)),%a0
2725 movel %a0@,%a1
2726 addl #PAGESIZE,%a0@
2730 movel %a1,%a0
2731 movew #PAGESIZE/4-1,%d0
2732 1:
2734 dbra %d0,1b
2736 dputn %a0
2757 .byte 4,0x44 /* x16, 1 stopbit, no parity */
2762 .byte 12,1,13,0 /* 38400 baud */
2763 .byte 14,1 /* Baud rate generator enable */
2766 .byte -1
2781 .byte 4,0x44 /* x16, 1 stopbit, no parity */
2790 .byte -1
2834 func_start serial_init,%d0/%d1/%a0/%a1
2838 * a0 = pointer to boot info record
2841 * a0 = address of SCC
2845 * a0 = address of SCC
2854 is_not_amiga(1f)
2855 lea %pc@(L(custom)),%a0
2856 movel #-ZTWOBASE,%a0@
2859 movew %a0@,CUSTOMBASE+C_SERPER-ZTWOBASE
2861 1:
2879 lea %a1@(LSCC_CTRL),%a0
2881 moveb %a0@,%d0
2883 moveb #9,%a0@
2884 moveb #0xc0,%a0@
2889 subq #1,%d0
2895 moveb %d0,%a0@
2896 moveb %a1@+,%a0@
2898 3: clrb %a0@
2900 bclr #1,%a1@(LMFP_TSR)
2904 orb #1,%a1@(LMFP_TDCDR)
2905 bset #1,%a1@(LMFP_TSR)
2918 movel %pc@(L(mac_sccbase)),%a0
2920 moveb %a0@(mac_scc_cha_a_ctrl_offset),%d0
2922 moveb #9,%a0@(mac_scc_cha_a_ctrl_offset)
2923 moveb #0xc0,%a0@(mac_scc_cha_a_ctrl_offset)
2928 subq #1,%d0
2936 moveb %d0,%a0@(mac_scc_cha_a_ctrl_offset)
2937 moveb %a1@+,%a0@(mac_scc_cha_a_ctrl_offset)
2946 moveb %d0,%a0@(mac_scc_cha_b_ctrl_offset)
2947 moveb %a1@+,%a0@(mac_scc_cha_b_ctrl_offset)
3003 func_start serial_putc,%d0/%d1/%a0/%a1
3007 jbne 1f
3011 1:
3017 movel %pc@(L(custom)),%a0
3018 movew %d0,%a0@(CUSTOMBASE+C_SERDAT)
3019 1: movew %a0@(CUSTOMBASE+C_SERDATR),%d0
3021 jeq 1b
3076 1: btst #2,M147_SCC_CTRL_A
3077 jeq 1b
3094 jeq 1f | No tag - use the Bug
3129 1:
3144 1: btst #2,BVME_SCC_CTRL_A
3145 jeq 1b
3166 move.l %a1@,%a0
3167 move.b %d0,%a0@
3168 addq.l #4,%a0
3169 move.l %a0,%a1@
3178 1: moveb %a1@(LSRB0),%d0
3180 beq 1b
3193 1: moveb %a1@(DCALSR),%d1 /* Output to DCA */
3195 beq 1b
3207 is_not_virt(1f)
3211 1:
3220 func_start puts,%d0/%a0
3222 movel ARG1,%a0
3224 1:
3231 2: moveb %a0@+,%d0
3232 jne 1b
3246 1: roll #4,%d0
3252 addb #'A'-('9'+1),%d2
3260 dbra %d1,1b
3277 moveml %d0/%d1/%a0,%sp@-
3280 movel %sp@(18),%a0 /* fetch parameter */
3283 1:
3290 subq #1,%d1
3292 moveb %a0@+,%d0
3293 jne 1b
3296 moveml %sp@+,%d0/%d1/%a0
3301 func_start set_leds,%d0/%a0
3304 is_not_hp300(1f)
3305 movel %pc@(L(iobase)),%a0
3306 moveb %d0,%a0@(0x1ffff)
3309 1:
3311 movel %pc@(L(iobase)),%a0
3314 moveb %d0,%a0@(LCPUCTRL)
3331 func_start console_init,%a0-%a4/%d0-%d7
3334 * a0 = pointer to boot_info
3359 moveq #-1,%d0 /* Mac_black */
3360 subq #1,%d6
3370 lea %pc@(font_vga_8x8),%a0
3372 lea %pc@(font_vga_8x16),%a0
3374 lea %pc@(font_vga_6x11),%a0
3376 lea %pc@(font_vga_8x8),%a0
3378 lea 0,%a0
3386 movel %a0,%a1@ /* store pointer to struct fbcon_font_desc in console_font */
3387 tstl %a0
3388 jeq 1f
3390 movel %a0@(FONT_DESC_DATA),%d0
3401 /* ASSERT: a0 = contents of Lconsole_font */
3403 divul %a0@(FONT_DESC_WIDTH),%d0 /* d0 = max num chars per row */
3406 divul %a0@(FONT_DESC_HEIGHT),%d1 /* d1 = max num rows */
3421 1:
3425 func_start console_put_penguin,%a0-%a1/%d0-%d7
3430 lea %pc@(L(mac_dimensions)),%a0
3431 movel %a0@,%d0
3443 addq #1,%d0
3446 addq #1,%d0
3450 addq #1,%d1
3466 func_start console_scroll,%a0-%a4/%d0-%d7
3467 lea %pc@(L(mac_videobase)),%a0
3468 movel %a0@,%a1
3470 lea %pc@(L(mac_rowbytes)),%a0
3471 movel %a0@,%d5
3472 movel %pc@(L(console_font)),%a0
3473 tstl %a0
3474 jeq 1f
3475 mulul %a0@(FONT_DESC_HEIGHT),%d5 /* account for # scan lines per character */
3481 lea %pc@(L(mac_dimensions)),%a0
3482 movel %a0@,%d3
3491 lea %pc@(L(mac_rowbytes)),%a0
3492 movel %a0@,%d6
3493 movel %pc@(L(console_font)),%a0
3494 subl %a0@(FONT_DESC_HEIGHT),%d4 /* we're not scrolling the top row! */
3497 subq #1,%d6
3510 lea %pc@(L(mac_rowbytes)),%a0
3511 movel %a0@,%d6
3512 movel %pc@(L(console_font)),%a0
3513 mulul %a0@(FONT_DESC_HEIGHT),%d6 /* scan line bytes x font height */
3515 subq #1,%d6
3517 moveq #-1,%d0
3529 1:
3533 func_start console_putc,%a0/%a1/%d0-%d7
3543 jbne 1f
3547 1:
3548 lea %pc@(L(console_globals)),%a0
3552 movel %a0@(Lconsole_struct_cur_row),%d0
3553 addil #1,%d0
3554 movel %d0,%a0@(Lconsole_struct_cur_row)
3555 movel %a0@(Lconsole_struct_num_rows),%d1
3557 jcs 1f
3558 subil #1,%d0
3559 movel %d0,%a0@(Lconsole_struct_cur_row)
3561 1:
3567 clrl %a0@(Lconsole_struct_cur_column)
3571 cmpib #1,%d7
3573 clrl %a0@(Lconsole_struct_cur_row)
3574 clrl %a0@(Lconsole_struct_cur_column)
3580 * a0 = pointer to console globals
3587 movel %a0@(Lconsole_struct_cur_column),%d0
3588 addql #1,%a0@(Lconsole_struct_cur_column)
3589 movel %a0@(Lconsole_struct_num_columns),%d1
3591 jcs 1f
3593 1:
3594 movel %a0@(Lconsole_struct_cur_row),%d1
3598 * a0 = address of pointer to font data (fbcon_font_desc)
3600 movel %pc@(L(console_font)),%a0
3603 /* ASSERT: a0 = contents of Lconsole_font */
3604 mulul %a0@(FONT_DESC_HEIGHT),%d7 /* d7 = index into font data */
3611 * d2 = (bit 0) 1/0 for white/black (!) pixel on screen
3616 /* ASSERT: a0 = contents of Lconsole_font */
3617 mulul %a0@(FONT_DESC_WIDTH),%d0
3618 mulul %a0@(FONT_DESC_HEIGHT),%d1
3619 movel %a0@(FONT_DESC_HEIGHT),%d7 /* Load fbcon_font_desc.height into d7 */
3620 subq #1,%d7
3624 /* ASSERT: a0 = contents of Lconsole_font */
3625 movel %a0@(FONT_DESC_WIDTH),%d6 /* Load fbcon_font_desc.width into d6 */
3626 subql #1,%d6
3629 lslb #1,%d3
3630 scsb %d2 /* convert 1 bit into a byte */
3632 addq #1,%d0
3635 /* ASSERT: a0 = contents of Lconsole_font */
3636 subl %a0@(FONT_DESC_WIDTH),%d0
3637 addq #1,%d1
3647 * d2 = (bit 0) 1/0 for white/black (!)
3650 func_start console_plot_pixel,%a0-%a1/%d0-%d4
3663 * d2 = black or white (0/1)
3668 cmpb #1,%d3
3676 andb #1,%d2
3693 lsll #1,%d4 /* ! */
3694 andb #1,%d2
3697 addq #1,%d4
3702 addq #1,%d4
3713 andb #1,%d4
3714 eorb #1,%d4
3716 andb #1,%d2
3719 addq #1,%d4
3721 addq #1,%d4
3723 addq #1,%d4
3728 addq #1,%d4
3730 addq #1,%d4
3732 addq #1,%d4
3741 andb #1,%d2
3755 andb #1,%d2
3870 .long -1