From 3184beda90cc5fbb12737d29854365ba981c05ca Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Wed, 12 Jan 2022 05:33:59 +1100 Subject: docs: List MSYS2 packages required to build PDF documentation on Windows now that TeX Live is available. --- docs/source/initialsetup/compilingmame.rst | 13 +++++++++++-- src/lib/formats/fs_coco_os9.cpp | 10 +++++----- src/lib/formats/fs_coco_rsdos.cpp | 8 ++++---- 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/docs/source/initialsetup/compilingmame.rst b/docs/source/initialsetup/compilingmame.rst index 84dd21dd00c..fdd0545db9f 100644 --- a/docs/source/initialsetup/compilingmame.rst +++ b/docs/source/initialsetup/compilingmame.rst @@ -115,6 +115,11 @@ with MSYS2 and the **pacman** package manager. ``mingw-w64-i686-python-sphinx``, ``mingw-w64-i686-python-sphinx_rtd_theme`` and ``mingw-w64-x86_64-python-sphinxcontrib-svg2pdfconverter`` a 32-bit MinGW environment). +* To build the PDF documentation, you’ll additionally need + ``mingw-w64-x86_64-texlive-latex-extra`` and + ``mingw-w64-x86_64-texlive-fonts-recommended`` (or + ``mingw-w64-i686-texlive-latex-extra`` and + ``mingw-w64-i686-texlive-fonts-recommended`` for a 32-but MinGW environment). * To generate API documentation from source, you’ll need ``doxygen``. * If you plan to rebuild bgfx shaders and you want to rebuild the GLSL parser, you’ll need ``bison``. @@ -405,8 +410,12 @@ can install these packages with pacman -S mingw-w64-x86_64-librsvg mingw-w64-x86_64-python-sphinx mingw-w64-x86_64-python-sphinxcontrib-svg2pdfconverter -Note that no LaTeX packages currently exist for MSYS2 so you will not be able to -generate a PDF file without using external tools. +If you intend to make a PDF via LaTeX, you’ll need to install a LaTeX +distribution such as TeX Live: + +.. code-block:: bash + + pacman -S mingw-w64-x86_64-texlive-fonts-recommended mingw-w64-x86_64-texlive-latex-extra .. _compiling-docs-debian: diff --git a/src/lib/formats/fs_coco_os9.cpp b/src/lib/formats/fs_coco_os9.cpp index aeacaf66d36..7bc36398a60 100644 --- a/src/lib/formats/fs_coco_os9.cpp +++ b/src/lib/formats/fs_coco_os9.cpp @@ -208,7 +208,7 @@ u32 coco_os9_image::pick_integer_be(const u8 *data, int length) { u32 result = 0; for (int i = 0; i < length; i++) - result |= ((u32)data[length - i - 1]) << i * 8; + result |= u32(data[length - i - 1]) << i * 8; return result; } @@ -406,7 +406,7 @@ std::vector coco_os9_image::impl::read_file_data(const file_header &header) for (u32 lsn = start_lsn; lsn < start_lsn + count; lsn++) { auto block = m_blockdev.get(lsn); - size_t block_size = std::min(std::min((u32)m_volume_header.sector_size(), block.size()), header.file_size() - (u32)data.size()); + size_t block_size = std::min(std::min(u32(m_volume_header.sector_size()), block.size()), header.file_size() - u32(data.size())); for (auto i = 0; i < block_size; i++) data.push_back(block.rodata()[i]); } @@ -525,7 +525,7 @@ std::vector coco_os9_image::impl::directory::contents() filesystem_t::file_t coco_os9_image::impl::directory::file_get(u64 key) { - file_header header(m_fs.m_blockdev.get((u32) key)); + file_header header(m_fs.m_blockdev.get(u32(key))); return file_t(new file(m_fs, std::move(header))); } @@ -536,7 +536,7 @@ filesystem_t::file_t coco_os9_image::impl::directory::file_get(u64 key) filesystem_t::dir_t coco_os9_image::impl::directory::dir_get(u64 key) { - return dir_t(m_fs.open_directory((u32) key)); + return dir_t(m_fs.open_directory(u32(key))); } -} +} // namespace fs diff --git a/src/lib/formats/fs_coco_rsdos.cpp b/src/lib/formats/fs_coco_rsdos.cpp index 99c36bb97e6..bc13fa0efc4 100644 --- a/src/lib/formats/fs_coco_rsdos.cpp +++ b/src/lib/formats/fs_coco_rsdos.cpp @@ -116,7 +116,7 @@ u8 coco_rsdos_image::impl::maximum_granules() const { u32 sector_count = m_blockdev.block_count(); u32 granule_count = (sector_count / 9) - 2; - return granule_count <= 0xFF ? (u8)granule_count : 0xFF; + return granule_count <= 0xFF ? u8(granule_count) : 0xFF; } std::string coco_rsdos_image::impl::get_filename_from_dirent(const rsdos_dirent &dirent) @@ -180,7 +180,7 @@ coco_rsdos_image::impl::granule_iterator::granule_iterator(impl &fs, const rsdos : m_granule_map(fs.read_sector(17, 2)) , m_current_granule(dirent.m_first_granule) , m_maximum_granules(fs.maximum_granules()) - , m_last_sector_bytes(((u16) dirent.m_last_sector_bytes_msb << 8) | dirent.m_last_sector_bytes_lsb) + , m_last_sector_bytes((u16(dirent.m_last_sector_bytes_msb) << 8) | dirent.m_last_sector_bytes_lsb) { } @@ -206,7 +206,7 @@ bool coco_rsdos_image::impl::granule_iterator::next(u8 &granule, u16 &byte_count // this is the last granule in the file success = true; granule = *m_current_granule; - u16 sector_count = std::max(granule_map_data[*m_current_granule], (u8)0xC1) - 0xC1; + u16 sector_count = std::max(granule_map_data[*m_current_granule], u8(0xC1)) - 0xC1; byte_count = sector_count * 256 + m_last_sector_bytes; m_current_granule = std::nullopt; } @@ -280,7 +280,7 @@ std::vector coco_rsdos_image::impl::file::read_all() // read this sector auto block = m_fs.read_sector(track, sector); const u8 *data = block.rodata(); - u16 data_length = std::min(byte_count, (u16)256); + u16 data_length = std::min(byte_count, u16(256)); // and append it to the results memcpy(result.data() + current_size, data, data_length); -- cgit v1.2.3