- 1 Interlace removal
- 2 Creating microSD card image
- 3 Pre-made Downloadable files
- 4 Raw write image to microSD card
This will stop the BBC output being interlaced (flickering) in all modes except MODE 7 which makes everything more pleasant....basically it does the same as typing in *TV0,1 (which Higgy menu unsets by default).
Note a few games set it on launch anyway e.g. Blitzkreig and most of Trickys made games - and some override to disable it - for some reason.
(Please see bottom section for pre-made downloadable images)
Patch to BEEB.MMB to disable interlace
This is specifically to patch BEEB.MMB inside [higgy_mmbeeb-v1.2.zip]
#patch menu disk0 !BOOT to disable interlace, *TV255 becomes *TV255,1 printf "\x2c\x31\x0d\x2a\x4d\x45\x4e\x55\x0d" | dd of=BEEB.MMB bs=1 seek=$((0x2206)) conv=notrunc #patch add 2 to the length of !BOOT file, 0D becomes 0F printf "\x0f" | dd of=BEEB.MMB bs=1 seek=$((0x2134)) conv=notrunc
You could do it manually in a hexeditor also..... If you want to check its correctly patched, MD5sum of original BEEB.MMB d39258e5ba25c76a06436105b2edbe65 , patched should be 23bb74089ea6e89f6c68fd7d430b7941.
I failed to 'uninterlace' patch his original BEEB.MMB so next best thing is to rebuild it with patched .asm. This approach has the added bonus that is lets you customise the first menu page (Favorites).
At the time of writing (Oct. 2022).....
Tricky's latest BEEB.MMB https://www.dropbox.com/s/yhd8xbunbiqfaa6/BEEB.zip?dl=0
Forum with the links here https://stardot.org.uk/forums/viewtopic.php?t=16070&start=90
Link to download the building code and ssd's to rebuild https://www.dropbox.com/s/we2h5zue0uoil5m/TrickyMenuWithDiscs.zip?dl=0 Download
Updated BuildTrickyMenu.ex to replace one https://www.dropbox.com/s/ae5tf295cb8cm2y/BuildTrickyMenu.zip?dl=0
Add "lda #144 : ldx #0 : ldy #1 : jsr OSBYTE ;; interlace off" into TrickyMenu.asm to change osbyte value to disable interlace as default - between a commented out line and .ack_escape
So you should end up with somethign like this
;; lda #MOVE_CRSR : jsr OSWRCH : lda #0 : jsr OSWRCH : lda #10 : jsr OSWRCH : lda #COL_YELLOW : jsr OSWRCH : lda #NEW_BKGND : jsr OSWRCH : lda #COL_BLUE : jsr OSWRCH lda #144 : ldx #0 : ldy #1 : jsr OSBYTE ;; interlace off .ack_escape
Then just rebuild with run.bat, the produced BEEB.MMB will then have interlace disabled.
If you would rather an ordered menu list like Higgy without a confusing not-your-favourites menu first - edit favourites.csv and change all Id's from 0 to 3000 (anything unused). Then rename TrickyMenu\GAMEIMG\DISCS\0 to TrickyMenu\GAMEIMG\DISCS\3000 (matching the Id you used) and they will get put in alphabetically along with everything else with run.bat
Creating microSD card image
Some people seem to struggle making working microSD cards when using large capacity cards (32Gb for example). This will generate a working card (image) - links top pre-made ones at bottom.
Run this in same location as BEEB.MMB is, it will output a raw writable image /tmp/bbc.img to raw write to microSD.
#create 512Mb FAT16 image dd if=/dev/zero of="/tmp/bbc.img" bs=512M count=1 dd if=/dev/zero of="/tmp/tmp.img" bs=511M count=1 echo -e "o\nn\np\n1\n\n\nt\n6\nw" | fdisk "/tmp/bbc.img" 2> /dev/null mkfs.vfat -F 16 "/tmp/tmp.img" -n BBC mcopy -i "/tmp/tmp.img" "BEEB.MMB" :: dd if="/tmp/tmp.img" of="/tmp/bbc.img" seek=2048
512Mb is plenty for the ~104Mb BEEB.MMB image, you can change it if you wish but the larger you make it the longer it will take to write back to SD card.
Use multiple mcopy lines if you want to include other in the image.
/tmp/bbc.img can be then raw written to microSD via dd or Rawrite32 or Win32 Disk Imager (windows)
Pre-made Downloadable files
BEEB.MMB file only
Higgy interlace off : higgy_mmbeeb-v1.2_interlace_off.zip
Tricky rebuilt (3/14/2020 sources), interlace off, favourites flattened : tricky_3_14_2020_rebuild_interlace_off.zip
raw images to raw write direct to microSD card
Higgy interlace off : higgy_mmbeeb-v1.2_interlace_off_raw.zip
Tricky rebuilt (3/14/2020 sources), interlace off, favourites flattened : tricky_3_14_2020_rebuild_interlace_off_raw.zip
Raw write image to microSD card
Raw write microSD images with dd (linux/MAC) or Win32 Disk Imager or rawwrite32(Windows)
'Caution' - replace /dev/sdd with correct drive!! (i.e. not a partition, the image has the partition)
#write raw image to microSD, assuming microSD on /dev/sdd and raw image from above in /tmp/bbc.img sudo dd if=/tmp/bbc.img of=/dev/sdd bs=64k status=progress
r@builder:/tmp$ sudo dd if=/tmp/bbc.img of=/dev/sdd bs=64k status=progress [sudo] password for r: 8192+0 records in 8192+0 records out 536870912 bytes (537 MB, 512 MiB) copied, 118.87 s, 4.5 MB/s