I am sure most people know how to do this but I thought I would document my steps in case I ever have to do this again. As everyone knows, you can install openbsd in other ways but having a bootable cdrom makes thing quite easy, I can't even remember when I used a floppy last?
Anyhey, This example was done for the OpenBSD 3.9. Architecture i386.
1. To start you will need to have the mkisofs binary on your system.
2. Next we need to make a few directories which will be the file system hierarchy. The top directory will be called "OpenBSD". The next directory down will be the version number of the OpenBSD release (3.9). The next directory down from that will be the architecture type (i386). In the architecture directory is where the install files will be going. Here is a quick example of making the hierarchy in the /tmp directory. Please switch to the root account to perform any steps if necessary.
/tmp> mkdir -p OpenBSD/3.9/i386
/tmp> cd OpenBSD/3.9/i386
3. Now stay in the "i386" directory. This is where we are going to put our install binaries. Find a mirror and download the following binaries (below) from the i386 architecture directory like ftp://ftp3.usa.openbsd.org/pub/OpenBSD/3.9/i386. The following commands will download the entire remote directory to the current local directory if you have the program ncftp or wget installed.
/tmp/OpenBSD/3.9/i386>
wget --passive-ftp ftp://ftp3.usa.openbsd.org/pub/OpenBSD/3.9/i386/*
[ ] CKSUM 02-Mar-2006 04:10 562
[ ] INSTALL.i386 02-Mar-2006 04:10 92K
[ ] INSTALL.linux 02-Mar-2006 04:10 22K
[ ] MD5 02-Mar-2006 04:10 1.0K
[ ] base39.tgz 02-Mar-2006 04:10 39M
[ ] bsd 02-Mar-2006 04:10 5.2M
[ ] bsd.mp 02-Mar-2006 04:10 5.2M
[ ] bsd.rd 02-Mar-2006 04:10 4.5M
[ ] cd39.iso 02-Mar-2006 04:10 4.6M
[ ] cdboot 02-Mar-2006 04:10 41K
[ ] cdbr 02-Mar-2006 04:10 2.0K
[ ] cdemu39.iso 02-Mar-2006 04:10 2.9M
[ ] cdrom39.fs 02-Mar-2006 04:10 2.8M
[ ] comp39.tgz 02-Mar-2006 04:10 72M
[ ] etc39.tgz 02-Mar-2006 04:10 1.1M
[ ] floppy39.fs 02-Mar-2006 04:10 1.4M
[ ] floppyB39.fs 02-Mar-2006 04:10 1.4M
[ ] floppyC39.fs 02-Mar-2006 04:10 1.4M
[ ] game39.tgz 02-Mar-2006 04:10 2.5M
[TXT] index.txt 20-Jan-2006 05:06 269
[ ] man39.tgz 02-Mar-2006 04:10 7.1M
[ ] misc39.tgz 02-Mar-2006 04:10 2.2M
[ ] pxeboot 02-Mar-2006 04:10 50K
[ ] xbase39.tgz 10-Mar-2006 13:04 10M
[ ] xetc39.tgz 10-Mar-2006 13:04 88K
[ ] xfont39.tgz 10-Mar-2006 13:04 32M
[ ] xserv39.tgz 10-Mar-2006 13:04 19M
[ ] xshare39.tgz 10-Mar-2006 13:04 2.0M
4. Now we will make the ISO image. We will go back up to the "OpenBSD" directory and execute the "mkisofs" command with some options. We will be using the cdrom38.fs to be our boot image for the CD. If this image has boot problems on your computer then you can try the floppy39.fs as your boot image. Please see the mkisofs man page for what the options are for. Please note that if /tmp/OpenBSD/OpenBSD39.iso exists and you run mkisofs again it will simply append the new image to the old image. Thus making the new image twice as large with illegal directories. Ok execute the following commands:
/tmp/OpenBSD/3.9/i386> cd ../../
/tmp/OpenBSD>mkisofs -vrTJV "OpenBSD39" -b 3.9/i386/cdrom39.fs -c boot.catalog -o OpenBSD38.iso /tmp/OpenBSD/
5. Now you should have a ISO image named "OpenBSD39.iso" in the /tmp/OpenBSD directory. You can now burn it using something like xcdroast...
Other resources: http://www.pantz.org/os/openbsd/makingaopenbsdcd.html