Index: comms/opencbm-kmod/Makefile =================================================================== --- comms/opencbm-kmod/Makefile +++ comms/opencbm-kmod/Makefile @@ -11,9 +11,6 @@ WRKSRC_SUBDIR= opencbm/sys/freebsd -post-install: - ${INSTALL_MAN} ${FILESDIR}/opencbm.4 ${STAGEDIR}${PREFIX}/man/man4 - .include "../opencbm/Makefile.inc" .include Index: comms/opencbm-kmod/files/opencbm.4 =================================================================== --- comms/opencbm-kmod/files/opencbm.4 +++ /dev/null @@ -1,86 +0,0 @@ -.Dd May 27, 2020 -.Dt OPENCBM 4 -.Os -.Sh NAME -.Nm opencbm -.Nd OpenCBM driver for parallel-port X[MA]-1541 cables -.Sh SYNOPSIS -.Nm -.Sh DESCRIPTION -The -.Nm -driver supports Commodore disk drives connected to the parallel port using -an XM(P)-1541 or XA(P)-1541 cable. -.Ss Loader Tunables -The following loader tunables are used to set driver configuration at the -.Xr loader 8 -prompt before booting the kernel, or they can be stored in -.Pa /boot/loader.conf -in order to automatically set them before booting the kernel. -It is also possible to use -.Xr kenv 1 -to change these tunables before loading the -.Nm -driver. -.Bl -tag -width indent -.It Va cbm.cable -Set to 0 or 1 to explicitly select an XM-1541 (0) or XA-1541 (1) type cable. -The default value of -1 will attempt to auto-detect the cable type, which -only works reliably when -.Va cbm.reset -is active and the drive is connected and powered on while loading the -.Nm -driver. -.It Va cbm.hold_clk -Set to 0 explicitly to release the CLK line of the bus when idle. -The default (1) is to strictly follow C64 behavior, always holding the CLK -line. -.It Va cbm.reset -When set to 1 (default), execute a bus reset and wait for response from the -drive while loading the -.Nm -driver. -Set to 0 explicitly to load the driver without having to wait for the bus. -In this case, you should also select a cable type explicity. -.El -.Sh FILES -The -.Nm -driver creates the following device node: -.Bl -tag -width indent -.It Pa /dev/cbm -Device for communicating with a Commodore disk drive over a parallel-port -cable. -.El -.Sh EXAMPLES -To load the driver with a drive connected and powered on, auto-detecting -the cable type: -.Pp -.Dl kldload opencbm -.Pp -To load the driver without issuing a bus reset and selecting an active -(XA-1541) cable: -.Pp -.Dl kenv cbm.cable=1 -.Dl kenv cbm.reset=0 -.Dl kldload opencbm -.Pp -If you want to load the driver at system startup, adding it to -.Va kld_list -in -.Pa /etc/rc.conf -.Ns , -it is recommended to disable -.Va cbm.reset -and explicitly select a cable type in -.Pa /boot/loader.conf -.Ns , -e.g. add the following lines for a passive (XM-1541) cable: -.Pp -.Dl cbm.cable=0 -.Dl cbm.reset=0 -.Sh SEE ALSO -The cables supported by the -.Nm -driver (XM-1541, XA-1541 and their variations) are described on -.Lk https://sta.c64.org/xcables.html Index: comms/opencbm-kmod/files/patch-compat-freebsd-14 =================================================================== --- comms/opencbm-kmod/files/patch-compat-freebsd-14 +++ comms/opencbm-kmod/files/patch-compat-freebsd-14 @@ -1,5 +1,14 @@ ---- opencbm/sys/freebsd/opencbm.c.orig 2022-05-13 16:48:06 UTC -+++ opencbm/sys/freebsd/opencbm.c +From 6e438c1b32d39e5238f65246e192c89b22fdfd82 Mon Sep 17 00:00:00 2001 +From: John Baldwin +Date: Fri, 20 May 2022 17:10:09 +0000 +Subject: [PATCH] FreeBSD kernel driver: compat with 14-CURRENT + +In 14-CURRENT (upcoming major release), there was a slight change to the +driver API at version 1400058. + +Add conditional code to retain compatibility. +--- opencbm.c.orig 2022-01-22 22:01:25 UTC ++++ opencbm.c @@ -133,8 +133,6 @@ static struct cdevsw cbm_cdevsw = { .d_name = CBM_NAME }; Index: comms/opencbm-plugin-xa1541/Makefile =================================================================== --- comms/opencbm-plugin-xa1541/Makefile +++ comms/opencbm-plugin-xa1541/Makefile @@ -2,10 +2,6 @@ PORTVERSION= ${OCBM_VERSION} CATEGORIES= comms archivers -PATCHFILES= 077611e1ec27b52081c45c1702ff3812233fdd5e.diff \ - dfa9dd172e2843a661cdb6cdba09d1c6c2c1b35e.diff \ - a5fb83548b0ed54372d7615118c8ec9ba338bb9b.diff - MAINTAINER= zirias@FreeBSD.org COMMENT= OpenCBM plugin for parallel-port cables @@ -18,12 +14,13 @@ USES= gmake pkgconfig USE_LDCONFIG= yes -MAKE_ARGS= CC="${CC}" SUBDIRS_PLUGIN_XA1541=opencbm/lib/plugin/xa1541 -MAKEFILE= LINUX/Makefile -MAKE_JOBS_UNSAFE= yes ALL_TARGET= plugin-xa1541 INSTALL_TARGET= install-plugin-xa1541 +post-patch: + ${REINPLACE_CMD} '/::.*CREATE_TARGET.*lib,install/d' \ + ${WRKSRC}/${MAKEFILE} + post-install: ${STRIP_CMD} ${STAGEDIR}${PLUGINBASENAME}xa1541.so.${OCBM_VERSION} @${RM} ${STAGEDIR}${PREFIX}/etc/opencbm.conf.d/00opencbm.conf Index: comms/opencbm-plugin-xa1541/pkg-plist =================================================================== --- comms/opencbm-plugin-xa1541/pkg-plist +++ comms/opencbm-plugin-xa1541/pkg-plist @@ -2,4 +2,4 @@ lib/opencbm/plugin/libopencbm-xa1541.a lib/opencbm/plugin/libopencbm-xa1541.so lib/opencbm/plugin/libopencbm-xa1541.so.0 -lib/opencbm/plugin/libopencbm-xa1541.so.0.4.99.102 +lib/opencbm/plugin/libopencbm-xa1541.so.%%OCBM_VERSION%% Index: comms/opencbm/Makefile =================================================================== --- comms/opencbm/Makefile +++ comms/opencbm/Makefile @@ -2,10 +2,6 @@ PORTVERSION= ${OCBM_VERSION} CATEGORIES= comms archivers -PATCHFILES= 077611e1ec27b52081c45c1702ff3812233fdd5e.diff \ - dfa9dd172e2843a661cdb6cdba09d1c6c2c1b35e.diff \ - a5fb83548b0ed54372d7615118c8ec9ba338bb9b.diff - MAINTAINER= zirias@FreeBSD.org COMMENT= Commodore CBM serial IEC/IEEE-488 bus utilities @@ -20,9 +16,6 @@ OPTIONS_DEFINE= DOCS INFO OPTIONS_DEFAULT= DOCS INFO -MAKE_ARGS= CC="${CC}" INFODIR=${PREFIX}/${INFO_PATH} -MAKEFILE= LINUX/Makefile -MAKE_JOBS_UNSAFE= yes ALL_TARGET= opencbm plugin-xu1541 plugin-xum1541 INSTALL_TARGET= install install-plugin-xu1541 install-plugin-xum1541 Index: comms/opencbm/Makefile.inc =================================================================== --- comms/opencbm/Makefile.inc +++ comms/opencbm/Makefile.inc @@ -1,18 +1,19 @@ -OCBM_VERSION= 0.4.99.102 +OCBM_VERSION= 0.4.99.104 DISTVERSIONPREFIX= v -DIST_SUBDIR= opencbm DISTINFO_FILE= ${.CURDIR}/../opencbm/distinfo -PATCH_DIST_STRIP= -p1 -PATCH_SITES= https://github.com/OpenCBM/OpenCBM/commit/ - USE_GITHUB= yes GH_ACCOUNT= OpenCBM GH_PROJECT= OpenCBM -PATCHDIR= ${.CURDIR}/../opencbm/files -PATCH_WRKSRC= ${WRKDIR}/OpenCBM-${OCBM_VERSION} - +MAKEFILE?= LINUX/Makefile +MAKE_ARGS= CC="${CC}" \ + INFODIR=${PREFIX}/${INFO_PATH} \ + SUBDIRS_PLUGIN_XA1541=opencbm/lib/plugin/xa1541 MAKE_ENV= USER_CFLAGS="${CFLAGS}" +PLIST_SUB= OCBM_VERSION=${OCBM_VERSION} + +PORTSCOUT= limit:\d\.\d + PLUGINBASENAME= ${PREFIX}/lib/opencbm/plugin/libopencbm- Index: comms/opencbm/distinfo =================================================================== --- comms/opencbm/distinfo +++ comms/opencbm/distinfo @@ -1,9 +1,3 @@ -TIMESTAMP = 1594050328 -SHA256 (opencbm/OpenCBM-OpenCBM-v0.4.99.102_GH0.tar.gz) = 37e0e2018dc667285d5dcdcbef662c3c00281714748e627ad2c9ce32ef44577f -SIZE (opencbm/OpenCBM-OpenCBM-v0.4.99.102_GH0.tar.gz) = 13398879 -SHA256 (opencbm/077611e1ec27b52081c45c1702ff3812233fdd5e.diff) = 75a3914ffa73abaa0abec7f2ede5fc34bffb6faf0d3e8579cc133933c234e01f -SIZE (opencbm/077611e1ec27b52081c45c1702ff3812233fdd5e.diff) = 700 -SHA256 (opencbm/dfa9dd172e2843a661cdb6cdba09d1c6c2c1b35e.diff) = c3e94219a390c6071c7a2baf6d4705c673c810f57ce0b2d665d37af85bb8f269 -SIZE (opencbm/dfa9dd172e2843a661cdb6cdba09d1c6c2c1b35e.diff) = 1487 -SHA256 (opencbm/a5fb83548b0ed54372d7615118c8ec9ba338bb9b.diff) = 42c22f3bf5d72d65742fe79b00417d75c2def62ddb58543f0e9d3b08023a2db9 -SIZE (opencbm/a5fb83548b0ed54372d7615118c8ec9ba338bb9b.diff) = 552 +TIMESTAMP = 1657617946 +SHA256 (OpenCBM-OpenCBM-v0.4.99.104_GH0.tar.gz) = 5499cd1143b4a246d6d7e93b94efbdf31fda0269d939d227ee5bcc0406b5056a +SIZE (OpenCBM-OpenCBM-v0.4.99.104_GH0.tar.gz) = 13415998 Index: comms/opencbm/pkg-plist =================================================================== --- comms/opencbm/pkg-plist +++ comms/opencbm/pkg-plist @@ -22,17 +22,17 @@ lib/libopencbm.a lib/libopencbm.so lib/libopencbm.so.0 -lib/libopencbm.so.0.4.99.102 +lib/libopencbm.so.%%OCBM_VERSION%% lib/opencbm/plugin/libopencbm-xu1541.a lib/opencbm/plugin/libopencbm-xu1541.so lib/opencbm/plugin/libopencbm-xu1541.so.0 -lib/opencbm/plugin/libopencbm-xu1541.so.0.4.99.102 +lib/opencbm/plugin/libopencbm-xu1541.so.%%OCBM_VERSION%% lib/opencbm/plugin/xu1541/read_event_log lib/opencbm/plugin/xu1541/usb_echo_test lib/opencbm/plugin/libopencbm-xum1541.a lib/opencbm/plugin/libopencbm-xum1541.so lib/opencbm/plugin/libopencbm-xum1541.so.0 -lib/opencbm/plugin/libopencbm-xum1541.so.0.4.99.102 +lib/opencbm/plugin/libopencbm-xum1541.so.%%OCBM_VERSION%% man/man1/cbmcopy.1.gz man/man1/cbmctrl.1.gz man/man1/cbmformat.1.gz @@ -79,6 +79,7 @@ %%PORTDOCS%%%%DOCSDIR%%/html/opencbm-34.html %%PORTDOCS%%%%DOCSDIR%%/html/opencbm-35.html %%PORTDOCS%%%%DOCSDIR%%/html/opencbm-36.html +%%PORTDOCS%%%%DOCSDIR%%/html/opencbm-37.html %%PORTDOCS%%%%DOCSDIR%%/html/opencbm-4.html %%PORTDOCS%%%%DOCSDIR%%/html/opencbm-5.html %%PORTDOCS%%%%DOCSDIR%%/html/opencbm-6.html