Skip to content

Validation

BigEd edited this page Apr 20, 2017 · 7 revisions

Here are some steps to test your build of the PiTubeDirect firmware. The optional first step is to check the debug output over a serial connection.

On This Page

Serial Debug

From Jan 2017 the serial debug output is only available in the debug kernels - adjust your config.txt accordingly.

First, connect a Pi-compatible USB/Serial cable (pin 6=GND, pin 8=Tx from the Pi).

Start a terminal program, running at 115,200 baud:

  • e.g. on linux run: gtkterm -s 115200 -p /dev/ttyUSB0

Without any connections to the Beeb, power up the Raspberry Pi.

The serial console start should with:

   FIRMWARE_VERSION : 572ca1d3 
         BOARD_MODEL : 00000000 
      BOARD_REVISION : 00a02082 
   BOARD_MAC_ADDRESS : 5ceb27b8 17d73569 
        BOARD_SERIAL : ce5c6935 00000000 
           EMMC_FREQ :    250.000 MHz    250.000 MHz    250.000 MHz
           UART_FREQ :     48.000 MHz   1000.000 MHz   1000.000 MHz
            ARM_FREQ :   1000.000 MHz   1000.000 MHz   1000.000 MHz
           CORE_FREQ :    400.000 MHz    400.000 MHz    400.000 MHz
            V3D_FREQ :    300.000 MHz    300.000 MHz    300.000 MHz
           H264_FREQ :    300.000 MHz    300.000 MHz    300.000 MHz
            ISP_FREQ :    300.000 MHz    300.000 MHz    300.000 MHz
          SDRAM_FREQ :    450.000 MHz    450.000 MHz    450.000 MHz
          PIXEL_FREQ :      0.000 MHz  -1894.967 MHz  -1894.967 MHz
            PWM_FREQ :      0.000 MHz    500.000 MHz    500.000 MHz
           CORE TEMP :  52.08 °C
        CORE VOLTAGE :   1.32 V
     SDRAM_C VOLTAGE :   1.20 V
     SDRAM_P VOLTAGE :   1.20 V
     SDRAM_I VOLTAGE :   1.20 V
            CMD_LINE : dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2709.boardrev=0xa02082 bcm2709.serial=0xce5c6935 smsc95xx.macaddr=B8:27:EB:5C:69:35 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline copro=0 fsck.repair=no rootwait
               COPRO : 0
0 0000000000 1100000000
1 0000220000 0000220011
2 0000000010 0000111110
A0 = GPIO27 = mask 08000000
A1 = GPIO02 = mask 00000004
A2 = GPIO03 = mask 00000008
enable_MMU_and_IDCaches
cpsr    = 600001d3
extctrl = 00000000 00000040
ttbcr   = 00000000
ttbr0   = 01fac04a
sctrl   = 00c5183d
ctype   = 84448004

and end with:

tube reset - copro 0

Some values may be slightly different, depending on your Pi Model.

If not, then seek help via the stardot forums.

Run some tests

Disconnect power, then attach the Pi to the Beeb using one of the Level Shifter options.

If your level shifter does not power the Pi over the Tube connector, first apply power to the Pi. Wait a couple of seconds, then apply power to the Beeb.

Hopefully you will see the familiar "Acorn Tube 6502 64K" banner.

Try the following:

>PRINT ~PAGE,~HIMEM
       800      8000

There are a couple of test programs pre-loaded into the memory of the 6502 Co Processor: SPHERE and CLOCKSP.

To run SPHERE:

>PAGE=&800
>OLD
>RUN

To run CLOCKSP:

>PAGE=&1000
>OLD
>RUN

To run Klaus Dormann's 6502 test suite:

>CALL &3400

See also Examples for each CoPro core

Next:Compilation flags