markdown demo

This isn't the Bin, don't treat it like one.
Randoms and Funnies are permitted, but no flaming.
Post Reply
User avatar
ZachBacon
Member
Posts: 223
Joined: Tue Mar 27, 2018 2:35 pm

markdown demo

Post by ZachBacon »


Advertisement :)

  • pica - high quality and fast image
    resize in browser.
  • babelfish - developer friendly
    i18n with plurals support and easy syntax.

You will like those projects!


h1 Heading 8-)

h2 Heading

h3 Heading

h4 Heading

h5 Heading
h6 Heading

Horizontal Rules




Typographic replacements

Enable typographer option to see result.

(c) (C) (r) (R) (tm) (TM) (p) (P) +-

test.. test... test..... test?..... test!....

!!!!!! ???? ,, -- ---

"Smartypants, double quotes" and 'single quotes'

Emphasis

This is bold text

This is bold text

This is italic text

This is italic text

Strikethrough

Blockquotes

Blockquotes can also be nested...

...by using additional greater-than signs right next to each other...

...or with spaces between arrows.

Lists

Unordered

  • Create a list by starting a line with +, -, or *
  • Sub-lists are made by indenting 2 spaces:
    • Marker character change forces new list start:
    • Ac tristique libero volutpat at
    • Facilisis in pretium nisl aliquet
    • Nulla volutpat aliquam velit
  • Very easy!

Ordered

  1. Lorem ipsum dolor sit amet
  2. Consectetur adipiscing elit
  3. Integer molestie lorem at massa
  1. You can use sequential numbers...
  2. ...or keep all the numbers as 1.

Start numbering with offset:

  1. foo
  2. bar

Code

Inline code

Indented code

Code: Select all

// Some comments
line 1 of code
line 2 of code
line 3 of code

Block code "fences"

Code: Select all

Sample text here...

Syntax highlighting

Code: Select all

var foo = function (bar) {
  return bar++;
};

console.log(foo(5));

Tables

OptionDescription
datapath to data files to supply the data that will be passed into templates.
engineengine to be used for processing templates. Handlebars is the default.
extextension to be used for dest files.

Right aligned columns

OptionDescription
datapath to data files to supply the data that will be passed into templates.
engineengine to be used for processing templates. Handlebars is the default.
extextension to be used for dest files.

Links

link text

link with title

Autoconverted link https://github.com/nodeca/pica (enable linkify to see)

Images

Image
Image

Like links, Images also have a footnote style syntax

Image

With a reference later in the document defining the URL location:

Plugins

The killer feature of markdown-it is very effective support of
syntax plugins.

Emojies

Classic markup: :wink: :crush: :cry: :tear: :laughing: :yum:

Shortcuts (emoticons): :-) :-( 8-) ;)

see how to change output with twemoji.

Subscript / Superscript

  • 19th
  • H2O

\<ins>

++Inserted text++

\<mark>

==Marked text==

Footnotes

Footnote 1 link[first].

Footnote 2 link[second].

Inline footnote^[Text of inline footnote] definition.

Duplicated footnote reference[second].

[first]: Footnote can have markup

Code: Select all

and multiple paragraphs.

[second]: Footnote text.

Definition lists

Term 1

: Definition 1
with lazy continuation.

Term 2 with inline markup

: Definition 2

Code: Select all

    { some code, part of Definition 2 }

Third paragraph of definition 2.

Compact style:

Term 1
~ Definition 1

Term 2
~ Definition 2a
~ Definition 2b

Abbreviations

This is HTML abbreviation example.

It converts "HTML", but keep intact partial entries like "xxxHTMLyyy" and so on.

*[HTML]: Hyper Text Markup Language

Custom containers

::: warning
here be dragons
:::

This post serves as an example of markdown and was borrowed from https://markdown-it.github.io


User avatar
ZachBacon
Member
Posts: 223
Joined: Tue Mar 27, 2018 2:35 pm

Re: markdown demo

Post by ZachBacon »

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

<!-- END doctoc generated TOC please keep comment here to allow auto update -->

Image Image Image

Image

Visual Boy Advance - M

Game Boy Advance Emulator

Windows and Mac builds are in the releases tab.

Nightly builds are here.

Your distribution may have packages available as well, search for
visualboyadvance-m or vbam.

It is also generally very easy to build from source, see below.

If you are using the windows binary release and you need localization, unzip
the translations.zip to the same directory as the executable.

If you are having issues, try resetting the config file first, go to Help ->
Factory Reset
.

Building

The basic formula to build vba-m is:

Code: Select all

cd ~ && mkdir src && cd src
git clone https://github.com/visualboyadvance-m/visualboyadvance-m.git
cd visualboyadvance-m
./installdeps

# ./installdeps will give you build instructions, which will be similar to:

mkdir build && cd build
cmake .. -G Ninja
ninja

./installdeps is supported on MSys2, Linux (Debian/Ubuntu, Fedora, Arch,
Solus, OpenSUSE, Gentoo and RHEL/CentOS) and Mac OS X (homebrew, macports or
fink.)

Building a Libretro core

Clone this repo and then,

Code: Select all

cd src/libretro
make -j`nproc`

Copy vbam_libretro.so to your RetroArch cores directory.

Visual Studio Support

For visual studio, dependency management is handled automatically with vcpkg,
From the Visual Studio GUI, just clone the repository with git and build with
the cmake configurations provided.

If the GUI does not detect cmake, go to File -> Open -> CMake and open the
CMakeLists.txt.

If you are using 2017, make sure you have all the latest updates, some issues
with cmake projects in the GUI have been fixed.

You can also build from the developer command prompt or powershell with the
environment loaded.

Using your own user-wide installation of vcpkg is supported, just make sure the
environment variable VCPKG_ROOT is set.

To build in the visual studio command prompt, use something like this:

Code: Select all

mkdir build
cd build
cmake .. -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_BUILD_TYPE=Debug -G Ninja
ninja

Dependencies

If your OS is not supported, you will need the following:

And the following development libraries:

  • zlib (required)
  • mesa (if using X11 or any OpenGL otherwise)
  • ffmpeg (optional, at least version 4.0.4, for game recording)
  • gettext and gettext-tools (optional, with ENABLE_NLS)
  • SDL2 (required)
  • SFML (optional, for link)
  • OpenAL or openal-soft (optional, a sound interface)
  • wxWidgets (required for GUI, 2.8 and non-stl builds are no longer supported)

On Linux and similar, you also need the version of GTK your wxWidgets is linked
to (usually 2 or 3) and the xorg development libraries.

Support for more OSes/distributions for ./installdeps is planned.

Cross compiling for 32 bit on a 64 bit host

./installdeps m32 will set things up to build a 32 bit binary.

This is supported on Fedora, Arch, Solus and MSYS2.

Cross Compiling for Win32

./installdeps takes one optional parameter for cross-compiling target, which
may be win32 which is an alias for mingw-w64-i686 to target 32 bit Windows,
or mingw-gw64-x86_64 for 64 bit Windows targets.

The target is implicit on MSys2 depending on which MINGW shell you started (the
value of $MSYSTEM.)

On Debian/Ubuntu this uses the MXE apt repository and works quite well.

On Fedora it can build using the Fedora MinGW packages, albeit with wx 2.8, no
OpenGL support, and no Link support for lack of SFML.

On Arch it currently doesn't work at all because the AUR stuff is completely
broken, I will at some point redo the arch stuff to use MXE as well.

CMake Options

The CMake code tries to guess reasonable defaults for options, but you can
override them, for example:

Code: Select all

cmake .. -DENABLE_LINK=NO -G Ninja

Of particular interest is making Release or Debug builds, the default
mode is Release, to make a Debug build use something like:

Code: Select all

cmake .. -DCMAKE_BUILD_TYPE=Debug -G Ninja

Here is the complete list:

CMake OptionWhat it DoesDefaults
ENABLE_SDLBuild the SDL portOFF
ENABLE_WXBuild the wxWidgets portON
ENABLE_DEBUGGEREnable the debuggerON
ENABLE_NLSEnable translationsON
ENABLE_ASM_COREEnable x86 ASM CPU cores (BUGGY AND DANGEROUS)OFF
ENABLE_ASMEnable the following two ASM optionsON for 32 bit builds
ENABLE_ASM_SCALERSEnable x86 ASM graphic filtersON for 32 bit builds
ENABLE_MMXEnable MMXON for 32 bit builds
ENABLE_LINKEnable GBA linking functionality (requires SFML)AUTO
ENABLE_LIRCEnable LIRC supportOFF
ENABLE_FFMPEGEnable ffmpeg A/V recordingAUTO
ENABLE_ONLINEUPDATESEnable online update checksON
ENABLE_LTOCompile with Link Time Optimization (gcc and clang only)ON for release build
ENABLE_GBA_LOGGINGEnable extended GBA loggingON
ENABLE_DIRECT3DDirect3D rendering for wxWidgets (Windows, NOT IMPLEMENTED!!!)ON
ENABLE_XAUDIO2Enable xaudio2 sound output for wxWidgets (Windows only)ON
ENABLE_OPENALEnable OpenAL for the wxWidgets portAUTO
ENABLE_SSPEnable gcc stack protector support (gcc only)OFF
ENABLE_ASANEnable libasan sanitizers (by default address, only in debug mode)OFF
UPSTREAM_RELEASEDo some release tasks, like codesigning, making zip and gpg sigs.OFF
VBAM_STATICTry link all libs statically (the following are set to ON if ON)OFF
SDL2_STATICTry to link static SDL2 librariesOFF
SFML_STATIC_LIBRARIESTry to link static SFML librariesOFF
FFMPEG_STATICTry to link static ffmpeg librariesOFF
SSP_STATICTry to link static gcc stack protector library (gcc only)OFF except Win32
OPENAL_STATICTry to link static OpenAL librariesOFF
SSP_STATICLink gcc stack protecter libssp statically (gcc, with ENABLE_SSP)OFF

Note for distro packagers, we use the CMake module
GNUInstallDirs
to configure installation directories.

MSys2 Notes

To run the resulting binary, you can simply type:

Code: Select all

./visualboyadvance-m

in the shell where you built it.

If you built with -DCMAKE_BUILD_TYPE=Debug, you will get a console app and
will see debug messages, even in mintty.

If you want to start the binary from e.g. a shortcut or Explorer, you will need
to put c:\msys64\mingw32\bin for 32 bit builds and c:\msys64\mingw64\bin
for 64 bit builds in your PATH (to edit system PATH, go to Control Panel ->
System -> Advanced system settings -> Environment Variables.)

If you want to package the binary, you will need to include the MinGW DLLs it
depends on, they can install to the same directory as the binary.

Our own builds are static.

Debug Messages

We have an override for wxLogDebug() to make it work even in non-debug builds
of wx and on windows, even in mintty.

It works like printf(), e.g.:

Code: Select all

int foo = 42;
wxLogDebug(wxT("the value of foo = %d"), foo);

From the core etc. the usual:

Code: Select all

fprintf(stderr, "...", ...);

will work fine.

You need a debug build for this to work or to even have a console on Windows.
Pass -DCMAKE_BUILD_TYPE=Debug to cmake.

Reporting Crash Bugs

If the emulator crashes and you wish to report the bug, a backtrace made with
debug symbols would be immensely helpful.

To generate one (on Linux and MSYS2) first build in debug mode by invoking
cmake as:

Code: Select all

cmake .. -DCMAKE_BUILD_TYPE=Debug

After you've reproduced the crash, you need the core dump file, you may need to
do something such as:

Code: Select all

ulimit -c unlimited

in your shell to enable coredump files.

This
post

explains how to retrieve core dump on Fedora Linux (and possibly other
distributions.)

Once you have the core dump file, open it with gdb, for example:

Code: Select all

gdb -c core ./visualboyadvance-m

In the gdb shell, to print the backtrace, type:

Code: Select all

bt

This may be a bit of a hassle, but it helps us out immensely.

Contributing

See the Developer Manual.

Image Image


User avatar
ZachBacon
Member
Posts: 223
Joined: Tue Mar 27, 2018 2:35 pm

Re: markdown demo

Post by ZachBacon »

Some of the shortcomings of this markdown mod is that it doesn't support doctoc and syntax highlighting, might need to see about adding certain markdown features as we see fit. But overall... Not terrible and it does the job fairly well.

https://github.com/AlfredoRamos/phpbb-ext-markdown

Image Image


Post Reply