Pi1MHz Software
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
Yes, that was a new LUN - made by using the select command (equivalent of using the * command in the Util ROM) rather than doing anything to the SD card. I did it wrong actually, should have been 64 heads, so it only gives me a 256 disc!
Re: Pi1MHz Software
Interesting I don't get bad FSmap while trying to read the defect list
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
No, that was after a false start where I'd already tried formatting...it should be disc error &2C on a "fresh" LUN.
It would be interesting if the Adaptec Read Capacity command could be implemented, might give us a clue about what the controller thinks the disc size is straight after a format.
It would be interesting if the Adaptec Read Capacity command could be implemented, might give us a clue about what the controller thinks the disc size is straight after a format.
Re: Pi1MHz Software
totally untested , but Read capacity may now work.
- Attachments
-
- Pi1MHz_20220528_2249_root.zip
- (1.31 MiB) Downloaded 35 times
Last edited by dp11 on Sat May 28, 2022 10:52 pm, edited 1 time in total.
Re: Pi1MHz Software
Can you confirm if the Pi1MHz software can run on either the Pi4, or the Pi Zero 2 W?
Thanks
Thanks
Re: Pi1MHz Software
Pizero2 is supported Pi4 isn't yet.
Re: Pi1MHz Software
I can't get the software you posted yesterday or today to run on my Pi Zero 2, but it runs ok on my Zero W and older Zero just fine. Is that expected behaviour?
The software on your github page seems to run on all three variants without any problem.
The software on your github page seems to run on all three variants without any problem.
Re: Pi1MHz Software
Okay I'll check pizero 2 and see what I have done wrong.
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
-
- Posts: 311
- Joined: Tue May 21, 2013 3:47 pm
- Contact:
Re: Pi1MHz Software
This version works for me, when starting from scratch with the "Quickstart LUN" from the BeebSCSI website. I used the SUPERFORM provided in that LUN to create and format LUNs 1, 2 and 3 successfully.
(I did notice fwiw that the size of these new ones is 524172kb, when the original LUN 0 is 524140. No idea if that is a problem and/or expected, but it doesn't cause any obvious issues at least.)
-
- Posts: 311
- Joined: Tue May 21, 2013 3:47 pm
- Contact:
Re: Pi1MHz Software
It works ok here fwiw - I didn't do much with it mind, just booted up and moved around and listed a few directories on my drives.BeebMaster wrote: ↑Sun May 29, 2022 2:33 pm The latest version posted doesn't work at all, Pi1MHz SCSI isn't recognised.
(To be clear, I used the first beta provided, version 2239, to actually do the formatting tests.)
Re: Pi1MHz Software
Thanks for the feedback. Latest version attached.
- Attachments
-
- Pi1MHz_20220602_1100_root.zip
- (1.19 MiB) Downloaded 36 times
-
- Posts: 311
- Joined: Tue May 21, 2013 3:47 pm
- Contact:
Re: Pi1MHz Software
Thanks, do you consider that safe to use as a “release” version (I’ve currently reverted the two test versions above, even though they seem to work fine)?
Re: Pi1MHz Software
Given I'm the only person to have tested this version like the community to have a play first just incase I have made a mistake. I can't see how I could have broken it, but i've said that before.
-
- Posts: 311
- Joined: Tue May 21, 2013 3:47 pm
- Contact:
Re: Pi1MHz Software
Understood, I will try it as soon as I can and report back.
-
- Posts: 311
- Joined: Tue May 21, 2013 3:47 pm
- Contact:
Re: Pi1MHz Software
All good here. I did noticed that a *CAT on power on on my Master 128 will hang, I need to do a Ctrl-Boot first. I think this might have always been the case though, perhaps related to the Pi not being fully ready?
Re: Pi1MHz Software
Yeah the pi takes about 1.8seconds to be ready. I'm looking at speeding this up. But it's not easy.
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
I just tried the latest version 220602 1100, but I still have the same problem with formatting, the verification goes on forever. Exiting out of it and writing an ADFS map & root and then verifying again solves the problem. So it looks like when it exits from the format call, it hasn't updated the size of the LUN in its internals, so the verify keeps going presumably until it falls off the end of the SD card.
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
Not sure what it is really because after the format with verify being aborted, read capacity gives the right value, so somehow that isn't feeding into a "volume overflow" or "illegal address" error which should halt the verify when the disc capacity is reached, or maybe it's just not checking that the verify operation is reading outside the FAT LUN file on the card:
Also, can it set the number of sectors per track depending on the value of the Interleave at format please (as per Adaptec manual, interleave = 1 = spt 32, interleave <>1 = spt = 33)? Last time I looked at the code, it was hard wired to 33 spt all over the place (as seen in the capacity calc above, which is 1024 x 64 x 33).
In "Superform", you don't get a choice of interleave, it sets it to 5, so spt will always be 33, which is good for Winchester discs as it gives a bit more capacity, but for SD cards, since we can easily have the maximum ADFS disc size of 512MB, it makes much more sense to use a round geometry of 1024 cylinders, 64 heads and 32 sectors per track.
Also, can it set the number of sectors per track depending on the value of the Interleave at format please (as per Adaptec manual, interleave = 1 = spt 32, interleave <>1 = spt = 33)? Last time I looked at the code, it was hard wired to 33 spt all over the place (as seen in the capacity calc above, which is 1024 x 64 x 33).
In "Superform", you don't get a choice of interleave, it sets it to 5, so spt will always be 33, which is good for Winchester discs as it gives a bit more capacity, but for SD cards, since we can easily have the maximum ADFS disc size of 512MB, it makes much more sense to use a round geometry of 1024 cylinders, 64 heads and 32 sectors per track.
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
I thought I would have a go at modifying the code to see if I can do something about the 32/33 spt thing, but first I wanted to make sure I could compile it, so I downloaded and unzipped the master, but when I try to use release.sh or build it more manually, I get this:
Anybody know what I am doing wrong?
Code: Select all
Scanning dependencies of target gitversion
Running version.sh script
version.sh: line 7: git: command not found
version.sh: line 10: git: command not found
version:
gitversion.h:
#define GITVERSION ""
[ 0%] Built target gitversion
Scanning dependencies of target Pi1MHz
[ 4%] Building C object CMakeFiles/Pi1MHz.dir/ram_emulator.c.obj
arm-none-eabi-gcc: error: unrecognized command line option '-fanalyzer'
[ 8%] Building ASM object CMakeFiles/Pi1MHz.dir/rpi/arm-start.S.obj
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:76: CMakeFiles/Pi1MHz.dir/ram_emulator.c.obj] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 12%] Building C object CMakeFiles/Pi1MHz.dir/rpi/armc-cstubs.c.obj
[ 16%] Building C object CMakeFiles/Pi1MHz.dir/Pi1MHz.c.obj
arm-none-eabi-gcc: error: unrecognized command line option '-fanalyzer'
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:94: CMakeFiles/Pi1MHz.dir/rpi/armc-cstubs.c.obj] Error 1
arm-none-eabi-gcc: error: unrecognized command line option '-fanalyzer'
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:63: CMakeFiles/Pi1MHz.dir/Pi1MHz.c.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/Pi1MHz.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
Re: Pi1MHz Software
The "-fanalyzer" option came in with gcc-10. It's possible your arm-none-eabi-gcc cross compiler version is older than that (on my Debian 10 machine it's 7.3.1 so do doesn't understand it.
You can delete the -fanalyzer line from src/CMakeLists.txt to disable it, or you can upgrade your build environment. I dunno what the minimum gcc version recommended to build this is, nor whether code produced by older versions will work properly.
I think there's also an error in src/framebuffer.c ; it's trying to include MODE7Font.h but the file is Mode7Font.h so the #include line needs to be fixed.
With those two changes it compiled on my Debian 10 machine!
You can delete the -fanalyzer line from src/CMakeLists.txt to disable it, or you can upgrade your build environment. I dunno what the minimum gcc version recommended to build this is, nor whether code produced by older versions will work properly.
I think there's also an error in src/framebuffer.c ; it's trying to include MODE7Font.h but the file is Mode7Font.h so the #include line needs to be fixed.
With those two changes it compiled on my Debian 10 machine!
Rgds
Stephen
Stephen
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
I did download the ARM tools from the link in Readme.md but it looks like I already had some installed. What do I do with the new extracted tools - do they just get dropped into /usr/bin or somewhere?
I commented out
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fanalyzer" )
from CMakeLists.txt and it let me get a bit further. Next problem was it said it couldn't find MODE7font.h because everything in Linux is case-sensitive, so I copied Mode7font.h as MODE7font.h and then it compiled, but I got a lot of warnings (this is a snippet as it wouldn't let me post the whole thing)
I commented out
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fanalyzer" )
from CMakeLists.txt and it let me get a bit further. Next problem was it said it couldn't find MODE7font.h because everything in Linux is case-sensitive, so I copied Mode7font.h as MODE7font.h and then it compiled, but I got a lot of warnings (this is a snippet as it wouldn't let me post the whole thing)
Code: Select all
./release.sh
-- The C compiler identification is GNU 9.2.1
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/arm-none-eabi-gcc
-- Configuring done
-- Generating done
-- Build files have been written to: /luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/scripts
Scanning dependencies of target gitversion
Running version.sh script
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
version:
gitversion.h:
#define GITVERSION ""
[ 0%] Built target gitversion
Scanning dependencies of target Pi1MHz
[ 4%] Building C object CMakeFiles/Pi1MHz.dir/Pi1MHz.c.obj
[ 8%] Building C object CMakeFiles/Pi1MHz.dir/rpi/performance.c.obj
[ 12%] Building C object CMakeFiles/Pi1MHz.dir/ram_emulator.c.obj
[ 16%] Building C object CMakeFiles/Pi1MHz.dir/rpi/audio.c.obj
[ 20%] Building C object CMakeFiles/Pi1MHz.dir/rpi/mailbox.c.obj
[ 32%] Building C object CMakeFiles/Pi1MHz.dir/rpi/exception.c.obj
[ 32%] Building C object CMakeFiles/Pi1MHz.dir/rpi/auxuart.c.obj
[ 32%] Building C object CMakeFiles/Pi1MHz.dir/rpi/info.c.obj
[ 36%] Building C object CMakeFiles/Pi1MHz.dir/rpi/gpio.c.obj
[ 40%] Building ASM object CMakeFiles/Pi1MHz.dir/rpi/arm-start.S.obj
[ 44%] Building C object CMakeFiles/Pi1MHz.dir/rpi/armc-cstubs.c.obj
[ 48%] Building C object CMakeFiles/Pi1MHz.dir/rpi/cache.c.obj
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c: In function 'RPI_SetGpioPinFunction':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c:11:13: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
11 | fsel_copy |= (func << ((gpio % 10) * 3));
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/exception.c: In function 'dump_digit':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/exception.c:21:11: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion]
21 | c = '0' + c;
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/exception.c:23:11: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion]
23 | c = 'A' + c - 10;
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c: In function 'RPI_SetGpioHi':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c:70:30: warning: conversion to 'rpi_reg_wo_t' {aka 'volatile long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
70 | RPI_GpioBase->GPSET0 = (1 << gpio);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c:74:30: warning: conversion to 'rpi_reg_wo_t' {aka 'volatile long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
74 | RPI_GpioBase->GPSET1 = (1 << (gpio - 32));
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c: In function 'RPI_SetGpioLo':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c:87:30: warning: conversion to 'rpi_reg_wo_t' {aka 'volatile long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
87 | RPI_GpioBase->GPCLR0 = (1 << gpio);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c:91:30: warning: conversion to 'rpi_reg_wo_t' {aka 'volatile long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
91 | RPI_GpioBase->GPCLR1 = (1 << (gpio - 32));
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c: In function 'RPI_SetGpioPull':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/gpio.c:121:29: warning: conversion to 'rpi_reg_wo_t' {aka 'volatile long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
121 | RPI_GpioBase->GPPUDCLK0 = 1<<gpio;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c: In function 'ram_emulator_byte_addr':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c:44:61: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
44 | case 1: byte_ram_addr = (byte_ram_addr & 0xFFFF00FF) | data<<8; break;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c:45:61: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
45 | default: byte_ram_addr = (byte_ram_addr & 0xFF00FFFF) | data<<16; break;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/performance.c: In function 'reset_performance_counters':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/performance.c:186:19: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
186 | cntenset |= (1 << i);
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c: In function 'ram_emulator_page_addr':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c:67:52: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
67 | page_ram_addr = (page_ram_addr & 0x00FFFFFF) | data<<24;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c:70:52: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
70 | page_ram_addr = (page_ram_addr & 0xFF00FFFF) | data<<16;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/ram_emulator.c:72:52: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
72 | page_ram_addr = (page_ram_addr & 0xFFFF00FF) | data<<8;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/audio.c: In function 'init_dma_buffer':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/audio.c:85:20: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion]
85 | buffer_state |= 1<<buf;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/Pi1MHz.c: In function 'init_JIM':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/Pi1MHz.c:327:45: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
327 | JIM_ram = (uint8_t *) malloc(16*1024*1024*JIM_ram_size); // malloc 480Mbytes
| ~~~~~~~~~~~~^~~~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/Pi1MHz.c:330:63: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
330 | if (!filesystemReadFile("JIM_Init.bin",JIM_ram,JIM_ram_size<<24))
| ~~~~~~~~~~~~^~~~
[ 52%] Building C object CMakeFiles/Pi1MHz.dir/rpi/rpi.c.obj
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/cache.c: In function '_clean_cache_area':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/cache.c:121:20: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
121 | cachelinesize = 4<<cachelinesize;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/cache.c: In function '_invalidate_cache_area':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/rpi/cache.c:145:20: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
145 | cachelinesize = 4<<cachelinesize;
| ^
[ 56%] Building C object CMakeFiles/Pi1MHz.dir/rpi/systimer.c.obj
[ 60%] Building C object CMakeFiles/Pi1MHz.dir/BeebSCSI/debug.c.obj
[ 68%] Building C object CMakeFiles/Pi1MHz.dir/BeebSCSI/fatfs/diskio.c.obj
[ 68%] Building C object CMakeFiles/Pi1MHz.dir/BeebSCSI/fatfs/ff.c.obj
[ 72%] Building C object CMakeFiles/Pi1MHz.dir/BeebSCSI/fatfs/ffunicode.c.obj
[ 76%] Building C object CMakeFiles/Pi1MHz.dir/BeebSCSI/filesystem.c.obj
[ 80%] Building C object CMakeFiles/Pi1MHz.dir/BeebSCSI/scsi.c.obj
[ 84%] Building C object CMakeFiles/Pi1MHz.dir/harddisc_emulator.c.obj
[ 88%] Building C object CMakeFiles/Pi1MHz.dir/rpi/sdcard.c.obj
[ 92%] Building C object CMakeFiles/Pi1MHz.dir/M5000_emulator.c.obj
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'ld_word':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:619:7: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
619 | rv = rv << 8 | ptr[0];
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'tchar2uni':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:786:8: warning: conversion from 'int' to 'WCHAR' {aka 'short unsigned int'} may change value [-Wconversion]
786 | wc = (WCHAR)(wc << 8) + b; /* Make a DBC */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'get_fat':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1153:7: warning: conversion to 'UINT' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
1153 | wc |= fs->win[bc % SS(fs)] << 8; /* Merge 2nd byte of the entry */
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/debug.c: In function 'debugSectorBufferHex':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/debug.c:135:76: warning: conversion from 'int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion]
135 | for (uint16_t byteNumber = 0; byteNumber < numberOfBytes; byteNumber += 16)
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'put_fat':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1227:9: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
1227 | *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val; /* Update 1st byte */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1232:9: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
1232 | *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F)); /* Update 2nd byte */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'dir_next':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1736:22: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1736 | if ((ofs / SS(fs) & (fs->csize - 1)) == 0) { /* Cluster changed? */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'cmp_lfn':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1865:35: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1865 | i = ((dir[LDIR_Ord] & 0x3F) - 1) * 13u; /* Offset in the LFN buffer */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'put_lfn':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1944:16: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1944 | i = (ord - 1) * 13u; /* Get offset in the LFN working buffer */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'gen_numname':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:1997:21: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
1997 | if (c > '9') c += 7;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'dir_read':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:2323:12: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
2323 | ord = (b == ord && sum == dp->dir[LDIR_Chksum] && pick_lfn(fs->lfnbuf, dp->dir)) ? ord - 1 : 0xFF;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'dir_find':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:2408:12: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
2408 | ord = (c == ord && sum == dp->dir[LDIR_Chksum] && cmp_lfn(fs->lfnbuf, dp->dir)) ? ord - 1 : 0xFF;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'get_fileinfo':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:2683:58: warning: conversion from 'int' to 'WCHAR' {aka 'short unsigned int'} may change value [-Wconversion]
2683 | if (IsUpper(wc) && (dp->dir[DIR_NTres] & lcf)) wc += 0x20;
| ^~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'create_name':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:2876:35: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
2876 | si = di; i = 8; ni = 11; b <<= 2; /* Enter name extension */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:2911:20: warning: conversion from 'int' to 'WCHAR' {aka 'short unsigned int'} may change value [-Wconversion]
2911 | b |= 1; wc -= 0x20;
| ^~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:2920:21: warning: conversion from 'int' to 'BYTE' {aka 'unsigned char'} may change value [-Wconversion]
2920 | if (ni == 8) b <<= 2; /* Shift capital flags if no extension */
| ^
[ 96%] Building C object CMakeFiles/Pi1MHz.dir/framebuffer.c.obj
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'f_read':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:3875:37: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
3875 | csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'f_write':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:3977:38: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
3977 | csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c: In function 'f_lseek':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ff.c:4426:40: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
4426 | dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c: In function 'ff_wtoupper':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15573:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15573 | case 1: uc -= (uc - bc) & 1; break; /* Case pairs */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15574:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15574 | case 2: uc -= 16; break; /* Shift -16 */
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15575:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15575 | case 3: uc -= 32; break; /* Shift -32 */
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15576:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15576 | case 4: uc -= 48; break; /* Shift -48 */
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15577:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15577 | case 5: uc -= 26; break; /* Shift -26 */
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15578:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15578 | case 6: uc += 8; break; /* Shift +8 */
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15579:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15579 | case 7: uc -= 80; break; /* Shift -80 */
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/BeebSCSI/fatfs/ffunicode.c:15580:19: warning: conversion from 'int' to 'WORD' {aka 'short unsigned int'} may change value [-Wconversion]
15580 | case 8: uc -= 0x1C60; break; /* Shift -0x1C60 */
| ^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'set_colour':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:115:37: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
115 | colour_table[index] = 0xFF000000 | ((b & 0xFF) << 16) | ((g & 0xFF) << 8) | (r & 0xFF);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:115:58: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
115 | colour_table[index] = 0xFF000000 | ((b & 0xFF) << 16) | ((g & 0xFF) << 8) | (r & 0xFF);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'update_palette':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:119:41: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
119 | RPI_PropertyStart(TAG_SET_PALETTE, 2 + num_colours);
| ~~^~~~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:120:28: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
120 | RPI_PropertyAddTwoWords(offset , num_colours);
| ^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:120:37: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
120 | RPI_PropertyAddTwoWords(offset , num_colours);
| ^~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:122:43: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
122 | RPI_PropertyAdd(colour_table[offset + i]);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_putpixel':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:230:65: warning: conversion from 'unsigned int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion]
230 | *(uint8_t *)(fb + (SCREEN_HEIGHT - y - 1) * pitch + x * 1) = get_colour(colour);
| ^~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'memsetquick':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:287:14: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
287 | uint32_t a=value;
| ^~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_scroll':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:355:44: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
355 | memmovequick(fbcache, fbcache + cheight * pitch * c_y_scale, (height - cheight)* c_y_scale * pitch);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:355:95: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
355 | memmovequick(fbcache, fbcache + cheight * pitch * c_y_scale, (height - cheight)* c_y_scale * pitch);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:357:56: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
357 | memsetquick(fbcache + (height - cheight)* c_y_scale * pitch, 0, cheight * c_y_scale * pitch);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:357:88: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
357 | memsetquick(fbcache + (height - cheight)* c_y_scale * pitch, 0, cheight * c_y_scale * pitch);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_clear':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:372:28: warning: conversion to 'int' from 'unsigned int' may change the sign of the result [-Wsign-conversion]
372 | memsetquick((void *)fb, get_colour(c_bg_col), height * pitch);
| ^~~~~~~~~~~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:372:57: warning: conversion to 'size_t' {aka 'unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
372 | memsetquick((void *)fb, get_colour(c_bg_col), height * pitch);
| ~~~~~~~^~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_cursor_left':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:381:21: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
381 | c_x_pos-= bpp * c_x_scale;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:383:25: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
383 | c_x_pos = c_x_max * bpp * c_x_scale;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_cursor_right':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:388:26: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
388 | if (c_x_pos < c_x_max * bpp * c_x_scale) {
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:389:21: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
389 | c_x_pos+= bpp * c_x_scale;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_cursor_next':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:421:26: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
421 | if (c_x_pos < c_x_max * bpp * c_x_scale) {
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:422:21: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
422 | c_x_pos+= bpp * c_x_scale;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_draw_ellipse':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:576:42: warning: declaration of 'width' shadows a global declaration [-Wshadow]
576 | void fb_draw_ellipse(int xc, int yc, int width, int height, unsigned int colour) {
| ~~~~^~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:177:17: note: shadowed declaration is here
177 | static uint16_t width, height;
| ^~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:576:53: warning: declaration of 'height' shadows a global declaration [-Wshadow]
576 | void fb_draw_ellipse(int xc, int yc, int width, int height, unsigned int colour) {
| ~~~~^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:177:24: note: shadowed declaration is here
177 | static uint16_t width, height;
| ^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_fill_ellipse':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:613:42: warning: declaration of 'width' shadows a global declaration [-Wshadow]
613 | void fb_fill_ellipse(int xc, int yc, int width, int height, unsigned int colour) {
| ~~~~^~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:177:17: note: shadowed declaration is here
177 | static uint16_t width, height;
| ^~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:613:53: warning: declaration of 'height' shadows a global declaration [-Wshadow]
613 | void fb_fill_ellipse(int xc, int yc, int width, int height, unsigned int colour) {
| ~~~~^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:177:24: note: shadowed declaration is here
177 | static uint16_t width, height;
| ^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_fill_area':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:763:16: warning: unsigned conversion from 'int' to 'unsigned int' changes value from '-1' to '4294967295' [-Wsign-conversion]
763 | colour = -1; // prevents any additional line drawing
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:796:16: warning: unsigned conversion from 'int' to 'unsigned int' changes value from '-1' to '4294967295' [-Wsign-conversion]
796 | colour = -1; // prevents any additional line drawing
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:805:23: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
805 | g_x_pos_last1 = x_left;
| ^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:806:23: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
806 | g_y_pos_last1 = y_left;
| ^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:807:23: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
807 | g_x_pos_last2 = x_right;
| ^~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:808:23: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
808 | g_y_pos_last2 = y_right;
| ^~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_get_bpp':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:823:11: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
823 | return bpp;
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_draw_character':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:860:20: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
860 | uint32_t ch = c * cheight;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:885:72: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
885 | uint8_t *fbptr = fb + c_x_pos + (c_y_pos + i*c_y_scale + scaley) * pitch;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:892:20: warning: conversion to 'int' from 'uint32_t' {aka 'long unsigned int'} may change the sign of the result [-Wsign-conversion]
892 | int col = (data & 0x80) ? c_fgol : c_bgol;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:892:20: warning: conversion to 'int' from 'uint32_t' {aka 'long unsigned int'} may change the sign of the result [-Wsign-conversion]
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:896:28: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion]
896 | *fbptr++ ^= col;
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:898:27: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion]
898 | *fbptr++ = col;
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'init_colour_table':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:948:18: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
948 | set_colour(i, r, g, b);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:951:18: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
951 | set_colour(i, 0, 0, 0);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_writec':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1045:24: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1045 | set_colour(l, r, g, b);
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1083:17: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
1083 | temp = c -32;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1085:30: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1085 | BBCFont[temp*cheight+(count -1)] = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1085:45: warning: conversion from 'int' to 'unsigned char' may change value [-Wconversion]
1085 | BBCFont[temp*cheight+(count -1)] = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1099:19: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion]
1099 | g_mode = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1102:18: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1102 | x_tmp = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1105:19: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1105 | x_tmp |= c << 8;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1108:18: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1108 | y_tmp = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1111:19: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1111 | y_tmp |= c << 8;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1121:38: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1121 | update_g_cursors(g_x_pos + x_tmp, g_y_pos + y_tmp);
| ~~~~~~~~^~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1121:55: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1121 | update_g_cursors(g_x_pos + x_tmp, g_y_pos + y_tmp);
| ~~~~~~~~^~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1143:77: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1143 | fb_draw_line(g_x_pos_last1, g_y_pos_last1, g_x_pos, g_y_pos, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1149:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1149 | fb_fill_area(g_x_pos, g_y_pos, col, HL_LR_NB);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1152:111: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1152 | fb_fill_triangle(g_x_pos_last2, g_y_pos_last2, g_x_pos_last1, g_y_pos_last1, g_x_pos, g_y_pos, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1155:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1155 | fb_fill_area(g_x_pos, g_y_pos, col, HL_RO_BG);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1158:82: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1158 | fb_fill_rectangle(g_x_pos_last1, g_y_pos_last1, g_x_pos, g_y_pos, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1161:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1161 | fb_fill_area(g_x_pos, g_y_pos, col, HL_LR_FG);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1164:116: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1164 | fb_fill_parallelogram(g_x_pos_last2, g_y_pos_last2, g_x_pos_last1, g_y_pos_last1, g_x_pos, g_y_pos, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1167:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1167 | fb_fill_area(g_x_pos, g_y_pos, col, HL_RO_NF);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1170:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1170 | fb_fill_area(g_x_pos, g_y_pos, col, AF_NONBG);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1173:47: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1173 | fb_fill_area(g_x_pos, g_y_pos, col, AF_TOFGD);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1177:69: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1177 | fb_draw_circle(g_x_pos_last1, g_y_pos_last1, radius, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1181:69: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1181 | fb_fill_circle(g_x_pos_last1, g_y_pos_last1, radius, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1184:82: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1184 | fb_draw_rectangle(g_x_pos, g_y_pos, g_x_pos_last1, g_y_pos_last1, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1187:116: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1187 | fb_draw_parallelogram(g_x_pos, g_y_pos, g_x_pos_last1, g_y_pos_last1, g_x_pos_last2, g_y_pos_last2, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1190:111: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1190 | fb_draw_triangle(g_x_pos, g_y_pos, g_x_pos_last1, g_y_pos_last1, g_x_pos_last2, g_y_pos_last2, col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1193:209: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1193 | b_draw_ellipse(g_x_pos_last2, g_y_pos_last2, max(/*abs(g_x_pos_last1 - g_x_pos_last2)*/0, abs(g_x_pos - g_x_pos_last2) ), max(abs(g_y_pos - g_y_pos_last2),abs(g_y_pos_last1 - g_y_pos_last2)), col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1196:128: warning: conversion to 'unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1196 | fb_fill_ellipse(g_x_pos_last2, g_y_pos_last2, abs(g_x_pos_last1 - g_x_pos_last2), abs(g_y_pos - g_y_pos_last2), col);
| ^~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1211:18: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1211 | x_tmp = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1214:19: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1214 | x_tmp |= c << 8;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1217:18: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1217 | y_tmp = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1220:19: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1220 | y_tmp |= c << 8;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1238:18: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1238 | x_tmp = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1242:18: warning: conversion from 'int' to 'int16_t' {aka 'short int'} may change value [-Wconversion]
1242 | y_tmp = c;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1243:32: warning: conversion to 'long unsigned int' from 'int' may change the sign of the result [-Wsign-conversion]
1243 | c_x_pos = x_tmp * bpp * c_x_scale;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1244:26: warning: conversion to 'long unsigned int' from 'int16_t' {aka 'short int'} may change the sign of the result [-Wsign-conversion]
1244 | c_y_pos = y_tmp * c_y_scale * cheight;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1275:20: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
1275 | c_x_pos = ((g_x_pos + g_x_origin)*SCREEN_WIDTH)/BBC_X_RESOLUTION;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1276:20: warning: conversion to 'uint32_t' {aka 'long unsigned int'} from 'int' may change the sign of the result [-Wsign-conversion]
1276 | c_y_pos = ((BBC_Y_RESOLUTION - (g_y_pos + g_y_origin))*SCREEN_HEIGHT)/BBC_Y_RESOLUTION ;
| ^
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c: In function 'fb_initialize':
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1418:17: warning: conversion from 'uint32_t' {aka 'long unsigned int'} to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion]
1418 | width = mp->data.buffer_32[0];
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1419:18: warning: conversion from 'uint32_t' {aka 'long unsigned int'} to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion]
1419 | height = mp->data.buffer_32[1];
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1427:15: warning: conversion to 'int' from 'uint32_t' {aka 'long unsigned int'} may change the sign of the result [-Wsign-conversion]
1427 | bpp = mp->data.buffer_32[0];
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1435:17: warning: conversion to 'int' from 'uint32_t' {aka 'long unsigned int'} may change the sign of the result [-Wsign-conversion]
1435 | pitch = mp->data.buffer_32[0];
| ^~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1460:15: warning: passing argument 1 of 'fb_writes' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
1460 | fb_writes("\r\n\r\nAcorn MOS\r\n\r\nPi1MHz\r\n\r\nBASIC\r\n\r\n>");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1390:29: note: expected 'char *' but argument is of type 'const char *'
1390 | static void fb_writes(char *string) {
| ~~~~~~^~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:1487:28: warning: conversion from 'int' to 'uint8_t' {aka 'unsigned char'} may change value [-Wconversion]
1487 | *fbptr++ = col;
| ^~~
At top level:
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:822:17: warning: 'fb_get_bpp' defined but not used [-Wunused-function]
822 | static uint32_t fb_get_bpp() {
| ^~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:818:17: warning: 'fb_get_height' defined but not used [-Wunused-function]
818 | static uint32_t fb_get_height() {
| ^~~~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:814:17: warning: 'fb_get_width' defined but not used [-Wunused-function]
814 | static uint32_t fb_get_width() {
| ^~~~~~~~~~~~
/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/framebuffer.c:810:17: warning: 'fb_get_address' defined but not used [-Wunused-function]
810 | static uint32_t fb_get_address() {
| ^~~~~~~~~~~~~~
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
Compiled version doesn't work in my Pi1MHz, I just hear the Music 500 click repeating forever!
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
Seems I have:
but that this is also the latest version apparently.
Code: Select all
gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
I installed gcc-10 package, that didn't help, so then I downloaded this:
https://developer.arm.com/-/media/Files ... abi.tar.xz
and extracted it and copied the bin dir into /usr/bin but now:
I don't know whether I'm nearer or further away now!
https://developer.arm.com/-/media/Files ... abi.tar.xz
and extracted it and copied the bin dir into /usr/bin but now:
Code: Select all
./release.sh
-- The C compiler identification is unknown
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/arm-none-eabi-gcc
-- Configuring done
-- Generating done
-- Build files have been written to: /luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/scripts
Scanning dependencies of target gitversion
Running version.sh script
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
version:
gitversion.h:
#define GITVERSION ""
[ 0%] Built target gitversion
Scanning dependencies of target Pi1MHz
[ 4%] Building C object CMakeFiles/Pi1MHz.dir/rpi/exception.c.obj
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
[ 8%] Building C object CMakeFiles/Pi1MHz.dir/rpi/info.c.obj
compilation terminated.
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:146: CMakeFiles/Pi1MHz.dir/rpi/exception.c.obj] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 12%] Building C object CMakeFiles/Pi1MHz.dir/rpi/audio.c.obj
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
[ 20%] Building C object CMakeFiles/Pi1MHz.dir/Pi1MHz.c.obj
[ 20%] Building ASM object CMakeFiles/Pi1MHz.dir/rpi/arm-start.S.obj
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:172: CMakeFiles/Pi1MHz.dir/rpi/info.c.obj] Error 1
[ 24%] Building C object CMakeFiles/Pi1MHz.dir/ram_emulator.c.obj
[ 28%] Building C object CMakeFiles/Pi1MHz.dir/rpi/gpio.c.obj
[ 32%] Building C object CMakeFiles/Pi1MHz.dir/rpi/cache.c.obj
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
[ 40%] Building C object CMakeFiles/Pi1MHz.dir/rpi/auxuart.c.obj
[ 40%] Building C object CMakeFiles/Pi1MHz.dir/rpi/armc-cstubs.c.obj
[ 44%] Building C object CMakeFiles/Pi1MHz.dir/rpi/mailbox.c.obj
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:107: CMakeFiles/Pi1MHz.dir/rpi/audio.c.obj] Error 1
compilation terminated.
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:63: CMakeFiles/Pi1MHz.dir/Pi1MHz.c.obj] Error 1
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:76: CMakeFiles/Pi1MHz.dir/ram_emulator.c.obj] Error 1
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
arm-none-eabi-gcc: fatal error: cannot execute 'cc1': execvp: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:133: CMakeFiles/Pi1MHz.dir/rpi/cache.c.obj] Error 1
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:159: CMakeFiles/Pi1MHz.dir/rpi/gpio.c.obj] Error 1
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:89: CMakeFiles/Pi1MHz.dir/rpi/arm-start.S.obj] Error 1
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:185: CMakeFiles/Pi1MHz.dir/rpi/mailbox.c.obj] Error 1
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:94: CMakeFiles/Pi1MHz.dir/rpi/armc-cstubs.c.obj] Error 1
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:120: CMakeFiles/Pi1MHz.dir/rpi/auxuart.c.obj] Error 1
[ 48%] Building C object CMakeFiles/Pi1MHz.dir/rpi/performance.c.obj
arm-none-eabi-gcc: fatal error: cannot read spec file 'nosys.specs': No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/Pi1MHz.dir/build.make:198: CMakeFiles/Pi1MHz.dir/rpi/performance.c.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/Pi1MHz.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
Re: Pi1MHz Software
If I was gonna test this then what I would do is extract it to /opt/ to create /opt/gcc-arm.....whatever
Then I would do
That'll let the build process find the arm-none-eabi-gcc binary in that directory.
(That's assuming /opt is where the compiler should be installed; I have no idea!)
Then I would do
Code: Select all
PATH=/opt/gcc-arm...whatever/bin:$PATH ./release.sh
(That's assuming /opt is where the compiler should be installed; I have no idea!)
Rgds
Stephen
Stephen
Re: Pi1MHz Software
BTW, I always use the env command to do that job, as it works in all shells AFAIK
In either case, it's a good idea, as it only affects that one command (and all its children.)
Code: Select all
env PATH=/opt/gcc-arm...whatever/bin:$PATH ./release.sh
Re: Pi1MHz Software
my guess is arm gcc is installed in a different place to what is expected so the paths are wrong somewhere. nosys.specs lives in arm-non-eabi/lib
I've fixed the case issue with Mode7Font.h
I've fixed the case issue with Mode7Font.h
- BeebMaster
- Posts: 7379
- Joined: Sun Aug 02, 2009 5:59 pm
- Location: Lost in the BeebVault!
- Contact:
Re: Pi1MHz Software
I uninstalled everything and re-installed gcc and gcc-arm-none-eabi so currently I have:
Then with the ARM tools I linked earlier unzipped, I did:
But I still get hundreds of "warnings" and it doesn't work, just getting the Music 500 click and the Pi light flashing as if it's going round in an endless reboot loop.
Code: Select all
ian@BMDesktop2020:/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/scripts$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.1' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-Av3uEd/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
ian@BMDesktop2020:/luks3/BMNFS/BBC/Pi1MHz/Pi1MHz-masterISWDev16-7-22/src/scripts$ arm-none-eabi-gcc -v
Using built-in specs.
COLLECT_GCC=arm-none-eabi-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-none-eabi/9.2.1/lto-wrapper
Target: arm-none-eabi
Configured with: ../configure --build=x86_64-linux-gnu --prefix=/usr --includedir='/usr/lib/include' --mandir='/usr/lib/share/man' --infodir='/usr/lib/share/info' --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir='/usr/lib/lib/x86_64-linux-gnu' --libexecdir='/usr/lib/lib/x86_64-linux-gnu' --disable-maintainer-mode --disable-dependency-tracking --mandir=/usr/share/man --enable-languages=c,c++,lto --enable-multilib --disable-decimal-float --disable-libffi --disable-libgomp --disable-libmudflap --disable-libquadmath --disable-libssp --disable-libstdcxx-pch --disable-nls --disable-shared --disable-threads --enable-tls --build=x86_64-linux-gnu --target=arm-none-eabi --with-system-zlib --with-gnu-as --with-gnu-ld --with-pkgversion=15:9-2019-q4-0ubuntu1 --without-included-gettext --prefix=/usr/lib --infodir=/usr/share/doc/gcc-arm-none-eabi/info --htmldir=/usr/share/doc/gcc-arm-none-eabi/html --pdfdir=/usr/share/doc/gcc-arm-none-eabi/pdf --bindir=/usr/bin --libexecdir=/usr/lib --libdir=/usr/lib --disable-libstdc++-v3 --host=x86_64-linux-gnu --with-headers=no --without-newlib --with-multilib-list=rmprofile CFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' CPPFLAGS='-Wdate-time -D_FORTIFY_SOURCE=2' CXXFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' FCFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' FFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' GCJFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' LDFLAGS='-Wl,-Bsymbolic-functions -Wl,-z,relro' OBJCFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' OBJCXXFLAGS='-g -O2 -fdebug-prefix-map=/build/gcc-arm-none-eabi-Gl9kT9/gcc-arm-none-eabi-9-2019-q4=. -fstack-protector-strong' INHIBIT_LIBC_CFLAGS=-DUSE_TM_CLONE_REGISTRY=0 AR_FOR_TARGET=arm-none-eabi-ar AS_FOR_TARGET=arm-none-eabi-as LD_FOR_TARGET=arm-none-eabi-ld NM_FOR_TARGET=arm-none-eabi-nm OBJDUMP_FOR_TARGET=arm-none-eabi-objdump RANLIB_FOR_TARGET=arm-none-eabi-ranlib READELF_FOR_TARGET=arm-none-eabi-readelf STRIP_FOR_TARGET=arm-none-eabi-strip
Thread model: single
gcc version 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] (15:9-2019-q4-0ubuntu1)
Code: Select all
env PATH=/luks3/BMNFS/Ubuntu/ARMDevTools/gcc-arm-11.2-2022.02-x86_64-arm-none-eabi/bin/:$PATH ./release.sh