| Time |
Thread |
Level |
Category |
Message |
| 0 |
GUI |
INFO |
emu |
Java version: 1.7.0_21 (1.7.0_21-b11) |
| 0 |
GUI |
INFO |
emu |
Java library path: lib/windows-amd64 |
| 10 |
GUI |
INFO |
emu |
Jpcsp v0.6 3040:3127 |
| 11 |
GUI |
INFO |
emu |
UMD param.sfo :
APP_VER = 01.00
BOOTABLE = 1
CATEGORY = UG
DISC_ID = ULJS00459
DISC_NUMBER = 1
DISC_TOTAL = 1
DISC_VERSION = 1.03
HRKGMP_VER = 19
PARENTAL_LEVEL = 7
PSP_SYSTEM_VER = 6.60
REGION = 32768
TITLE = 僕は友達が少ない ぽーたぶる
USE_USB = 0
probably homebrew? false |
| 1237 |
GUI |
INFO |
hle.ThreadManForUser |
Audio threads disabled: false |
| 1258 |
GUI |
INFO |
hle.sceDisplay |
Only GE Graphics: false |
| 1260 |
GUI |
INFO |
hle.sceDisplay |
Save Stencil To Memory: false |
| 1331 |
GUI |
INFO |
hle.sceAudio |
Audio ChReserve disabled: false |
| 1331 |
GUI |
INFO |
hle.sceAudio |
Audio Blocking disabled: false |
| 1341 |
GUI |
INFO |
hle.sceMpeg |
Using JPCSP connector |
| 1341 |
GUI |
INFO |
hle.sceMpeg |
Media Engine enabled |
| 1341 |
GUI |
INFO |
hle |
Using the external audio decoder (SonicStage) |
| 1478 |
GUI |
INFO |
hle.sceFont |
Loading font file 'jpn0.pgf'. Font='Sazanami Gothic' Type='Gothic-Regular' |
| 1633 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn0.pgf'. Font='Liberation Sans' Type='Regular' |
| 1650 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn1.pgf'. Font='Liberation Serif' Type='Regular' |
| 1705 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn2.pgf'. Font='Liberation Sans' Type='Italic' |
| 1709 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn3.pgf'. Font='Liberation Serif' Type='Italic' |
| 1712 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn4.pgf'. Font='Liberation Sans' Type='Bold' |
| 1715 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn5.pgf'. Font='Liberation Serif' Type='Bold' |
| 1715 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn6.pgf'. Font='Liberation Sans' Type='Bold Italic' |
| 1715 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn7.pgf'. Font='Liberation Serif' Type='Bold Italic' |
| 1715 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn8.pgf'. Font='Liberation Sans' Type='Regular' |
| 1725 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn9.pgf'. Font='Liberation Serif' Type='Regular' |
| 1725 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn10.pgf'. Font='Liberation Sans' Type='Italic' |
| 1725 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn11.pgf'. Font='Liberation Serif' Type='Italic' |
| 1735 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn12.pgf'. Font='Liberation Sans' Type='Bold' |
| 1735 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn13.pgf'. Font='Liberation Serif' Type='Bold' |
| 1735 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn14.pgf'. Font='Liberation Sans' Type='Bold Italic' |
| 1735 |
GUI |
INFO |
hle.sceFont |
Loading font file 'ltn15.pgf'. Font='Liberation Serif' Type='Bold Italic' |
| 1755 |
GUI |
INFO |
hle.sceFont |
Loading font file 'kr0.pgf'. Font='UnDotum' Type='Regular' |
| 1775 |
GUI |
INFO |
emu |
Using unpacked UMD EBOOT.BIN image |
| 1775 |
GUI |
INFO |
emu |
Using the following settings: |
| 1775 |
GUI |
INFO |
emu |
Configuration / Region |
| 1775 |
GUI |
INFO |
emu |
Language [日本語] |
| 1775 |
GUI |
INFO |
emu |
Button preference: ["O" for "Enter"] |
| 1775 |
GUI |
INFO |
emu |
Daylight savings: [Off] |
| 1775 |
GUI |
INFO |
emu |
Time zone offset in minutes (GMT+/-): [0] |
| 1775 |
GUI |
INFO |
emu |
Time format: [24H] |
| 1775 |
GUI |
INFO |
emu |
Date format: [YYYY-MM-DD] |
| 1775 |
GUI |
INFO |
emu |
WLAN power saving mode: [Off] |
| 1775 |
GUI |
INFO |
emu |
Ad hoc channel: [Auto] |
| 1775 |
GUI |
INFO |
emu |
Nickname: [] |
| 1775 |
GUI |
INFO |
emu |
Configuration / Video |
| 1775 |
GUI |
INFO |
emu |
[ ] Disable VBO (automatically disabled if not supported) |
| 1775 |
GUI |
INFO |
emu |
[ ] Only GE graphics (not recommended for homebrew) |
| 1775 |
GUI |
INFO |
emu |
[X] Use vertex cache |
| 1775 |
GUI |
INFO |
emu |
[ ] Use shaders |
| 1775 |
GUI |
INFO |
emu |
[ ] Use a Geometry Shader for 2D rendering (only relevant when using shaders) |
| 1775 |
GUI |
INFO |
emu |
[ ] Disable UBO (automatically disabled if not supported, only relevant when using shaders) |
| 1785 |
GUI |
INFO |
emu |
[ ] Enable VAO (only relevant when using shaders and vertex cache) |
| 1785 |
GUI |
INFO |
emu |
[ ] Enable saving GE screen to Textures instead of Memory |
| 1785 |
GUI |
INFO |
emu |
[ ] Enable decoding of indexed textures (using CLUT) in shader (only relevant when using shaders) |
| 1785 |
GUI |
INFO |
emu |
[ ] Enable dynamic shader generation (only relevant when using shaders, recommended for AMD/ATI) |
| 1785 |
GUI |
INFO |
emu |
[ ] Enable the shader implementation for the "Stencil Test" (more accurate but slower) |
| 1785 |
GUI |
INFO |
emu |
[ ] Enable the shader implementation for the "Color Mask" (more accurate but slower) |
| 1785 |
GUI |
INFO |
emu |
[ ] Disable optimized VertexInfo reading (may improve compatibility) |
| 1785 |
GUI |
INFO |
emu |
[ ] Save Stencil to Memory (more accurate but slower) |
| 1785 |
GUI |
INFO |
emu |
[ ] Use Software Rendering (very experimental, not yet complete, slow) |
| 1785 |
GUI |
INFO |
emu |
Configuration / Audio |
| 1785 |
GUI |
INFO |
emu |
[ ] Disable audio threads |
| 1785 |
GUI |
INFO |
emu |
[ ] Disable audio channels (not recommended) |
| 1785 |
GUI |
INFO |
emu |
[ ] Disable audio blocking |
| 1785 |
GUI |
INFO |
emu |
Configuration / Memory |
| 1785 |
GUI |
INFO |
emu |
[ ] Ignore invalid memory access (not recommended for test reports, but improves performance) |
| 1785 |
GUI |
INFO |
emu |
[ ] Ignore unmapped imports (not recommended) |
| 1785 |
GUI |
INFO |
emu |
Configuration / Media |
| 1785 |
GUI |
INFO |
emu |
[X] Use Media Engine |
| 1785 |
GUI |
INFO |
emu |
[X] Extract media files to tmp folder |
| 1785 |
GUI |
INFO |
emu |
[X] Decode audio files with SonicStage (must be installed separately and requires Media Engine) |
| 1795 |
GUI |
INFO |
emu |
[ ] Use debug font (disable flash0 fonts) |
| 1795 |
GUI |
INFO |
emu |
Configuration / Compiler |
| 1795 |
GUI |
INFO |
emu |
[X] Use compiler (dynarec) |
| 1795 |
GUI |
INFO |
emu |
[X] Output profiler info to profiler.txt (only for compiler) |
| 1795 |
GUI |
INFO |
emu |
[50] Maximum method size |
| 1795 |
GUI |
INFO |
emu |
Configuration / Crypto |
| 1795 |
GUI |
INFO |
emu |
[X] Extract decrypted EBOOT.BIN files to the TMP folder |
| 1795 |
GUI |
INFO |
emu |
[X] Handle SAVEDATA in crypto mode |
| 1795 |
GUI |
INFO |
emu |
[X] Extract original PGD files to the TMP folder |
| 1795 |
GUI |
INFO |
emu |
Configuration / Display |
| 1795 |
GUI |
INFO |
emu |
Anti-aliasing: [OFF] |
| 1795 |
GUI |
INFO |
emu |
Resolution: [Native] |
| 1795 |
GUI |
INFO |
emu |
[ ] Start JPCSP in Full-Screen Exclusive Mode in the following runs |
| 1795 |
GUI |
INFO |
hle.IoFileMgrForUser |
pspiofilemgr - filepath disc0/ |
| 2017 |
GUI |
INFO |
ge |
Using RenderingEngineLwjgl31 |
| 2017 |
GUI |
INFO |
ge |
Using VBO |
| 2017 |
GUI |
INFO |
ge |
OpenGL version: 3.3.0 |
| 2017 |
GUI |
INFO |
ge |
Shading Language version: 3.30 NVIDIA via Cg compiler |
| 2017 |
GUI |
INFO |
ge |
GL_CONTEXT_FLAGS: 0x0 |
| 2017 |
GUI |
INFO |
ge |
GL_CONTEXT_PROFILE_MASK: 0x0 |
| 2067 |
GUI |
INFO |
ge |
Using Async Vertex Cache |
| 39979 |
user_main |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0308) PSP_MODULE_AV_MP4 loaded |
| 40004 |
user_main |
INFO |
hle.sceUtility |
sceUtilityUnloadModule(module=0x0308) PSP_MODULE_AV_MP4 unloaded |
| 40007 |
user_main |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0300) PSP_MODULE_AV_AVCODEC loaded |
| 40029 |
user_main |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0308) PSP_MODULE_AV_MP4 loaded |
| 40050 |
user_main |
WARN |
hle.sceMp4 |
Unimplemented sceMp4Init unk1=true, unk2=true |
| 40054 |
user_main |
WARN |
hle.sceMp4 |
Unimplemented sceMp4Finish |
| 40055 |
user_main |
INFO |
hle.sceUtility |
sceUtilityUnloadModule(module=0x0308) PSP_MODULE_AV_MP4 unloaded |
| 40056 |
user_main |
INFO |
hle.sceUtility |
sceUtilityUnloadModule(module=0x0300) PSP_MODULE_AV_AVCODEC unloaded |
| 40099 |
user_main |
INFO |
hle.scePower |
scePowerRegisterCallback slot=0xFFFFFFFF, uid=0x13 |
| 40174 |
user_main |
INFO |
hle.ModuleMgrForUser |
hleKernelLoadModule(path='disc0:/PSP_GAME/USRDIR/psmf.prx') HLE module psmf loaded |
| 40405 |
user_main |
INFO |
stdout |
id:14 |
| 40439 |
user_main |
INFO |
hle.ModuleMgrForUser |
IGNORING:sceKernelStartModule HLE module 'psmf' |
| 40453 |
user_main |
INFO |
hle.ModuleMgrForUser |
hleKernelLoadModule(path='disc0:/PSP_GAME/USRDIR/libfont.prx') HLE module libfont loaded |
| 40473 |
user_main |
INFO |
stdout |
id:15 |
| 40479 |
user_main |
INFO |
hle.ModuleMgrForUser |
IGNORING:sceKernelStartModule HLE module 'libfont' |
| 40481 |
user_main |
INFO |
hle.ModuleMgrForUser |
hleKernelLoadModule(path='disc0:/PSP_GAME/USRDIR/libpsmfplayer.prx') HLE module libpsmfplayer loaded |
| 40507 |
user_main |
INFO |
stdout |
id:16 |
| 40513 |
user_main |
INFO |
hle.ModuleMgrForUser |
IGNORING:sceKernelStartModule HLE module 'libpsmfplayer' |
| 40515 |
user_main |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0500) PSP_MODULE_NP_DRM loaded |
| 40813 |
GUI |
INFO |
ge |
Compiling VertexInfoReader for GU_TRANSFORM_3D size=0 |
| 42463 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0301) PSP_MODULE_AV_SASCORE loaded |
| 43950 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0300) PSP_MODULE_AV_AVCODEC loaded |
| 43978 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilityLoadModule(module=0x0303) PSP_MODULE_AV_MPEGBASE loaded |
| 44019 |
Test Thread |
INFO |
hle.sceMpeg |
sceMpegInit |
| 50132 |
Test Thread |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/INSDIR/RES.DAT flags = 1 permissions = 0777 |
| 50162 |
Test Thread |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/font.dat flags = 1 permissions = 0777 |
| 51600 |
Test Thread |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/envpsp.dat flags = 1 permissions = 0777 |
| 52904 |
Test Thread |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/first.dat flags = 1 permissions = 0777 |
| 52960 |
GUI |
INFO |
ge |
Compiling VertexInfoReader for GU_COLOR_8888|GU_VERTEX_16BIT|GU_TRANSFORM_2D size=12 |
| 60519 |
Async Vertex Cache Thread |
INFO |
ge |
Compiling VertexInfoReader for GU_COLOR_8888|GU_VERTEX_32BITF|GU_TRANSFORM_3D size=16 |
| 60559 |
Async Vertex Cache Thread |
INFO |
ge |
Compiling VertexInfoReader for GU_TEXTURE_32BITF|GU_VERTEX_32BITF|GU_TRANSFORM_3D size=20 |
| 60591 |
Async Vertex Cache Thread |
INFO |
ge |
Compiling VertexInfoReader for GU_TEXTURE_32BITF|GU_VERTEX_32BITF|GU_TRANSFORM_3D size=20 |
| 62611 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilitySavedataInitStart 0x08B89500-0x08B89B00: Address 0x08B89500, mode=12(FILES), gameName=ULJS00459, saveName=<>, fileName=, secureVersion=0 |
| 62630 |
Async Vertex Cache Thread |
INFO |
ge |
Compiling VertexInfoReader for GU_COLOR_8888|GU_VERTEX_32BITF|GU_TRANSFORM_3D size=16 |
| 62976 |
GUI |
INFO |
ge |
Compiling VertexInfoReader for GU_COLOR_8888|GU_VERTEX_16BIT|GU_TRANSFORM_2D size=12 |
| 64881 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilitySavedataInitStart 0x08B89500-0x08B89B00: Address 0x08B89500, mode=15(READSECURE), gameName=ULJS00459, saveName=<>, fileName=SYSTEM.DAT, secureVersion=0 |
| 66182 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilitySavedataInitStart 0x08B89500-0x08B89B00: Address 0x08B89500, mode=15(READSECURE), gameName=ULJS00459, saveName=<>, fileName=SAVE0.DAT, secureVersion=0 |
| 70086 |
Test Thread |
INFO |
hle.sceUtility |
sceUtilitySavedataInitStart 0x08B89500-0x08B89B00: Address 0x08B89500, mode=15(READSECURE), gameName=ULJS00459, saveName=<>, fileName=SAVE1.DAT, secureVersion=0 |
| 73920 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/bgm.awb flags = 4001 permissions = 020644 |
| 73971 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/bgm.awb flags = 4001 permissions = 020644 |
| 74120 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/bgm.awb flags = 4001 permissions = 020644 |
| 74251 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/bgm.awb flags = 4001 permissions = 020644 |
| 74362 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/music.awb flags = 4001 permissions = 020644 |
| 74374 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/music.awb flags = 4001 permissions = 020644 |
| 74403 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/music.awb flags = 4001 permissions = 020644 |
| 74463 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/music.awb flags = 4001 permissions = 020644 |
| 74603 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/se.awb flags = 4001 permissions = 020644 |
| 74613 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/se.awb flags = 4001 permissions = 020644 |
| 74671 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/se.awb flags = 4001 permissions = 020644 |
| 74738 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/voice.awb flags = 4001 permissions = 020644 |
| 74760 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/voice.awb flags = 4001 permissions = 020644 |
| 74793 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/voice.awb flags = 4001 permissions = 020644 |
| 74832 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/comment.awb flags = 4001 permissions = 020644 |
| 74847 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/comment.awb flags = 4001 permissions = 020644 |
| 74877 |
CRI FS File Access 0 |
INFO |
hle.IoFileMgrForUser |
hleIoOpen filename = disc0:/PSP_GAME/USRDIR/comment.awb flags = 4001 permissions = 020644 |
| 102436 |
Test Thread |
INFO |
hle.scePsmfPlayer |
PSMF Player Data: displayBuffer=0x08400000, displayBufferSize=0x300000, playbackThreadPriority=35 |
| 102443 |
Test Thread |
WARN |
hle.scePsmfPlayer |
Unimplemented scePsmfPlayerSetTempBuf psmfPlayer=0x8C49020, tempBufAddr=0x08CD73C0, tempBufSize=0x10000 |
| 102469 |
Test Thread |
INFO |
hle.scePsmfPlayer |
Loading PSMF file 'disc0:/PSP_GAME/USRDIR/HAGA_OP.pmf' |
| 102517 |
Test Thread |
ERROR |
emu |
Attempt to use SceUID for different purpose (purpose='ThreadMan-eventflag',original='ThreadMan-thread') |
| 102518 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkEventFlagID unknown uid=0x7D |
| 102554 |
Test Thread |
INFO |
hle.scePsmfPlayer |
Found play info data: videoCodec=0xE, videoStreamNum=0, audioCodec=0x1, audioStreamNum=0, playMode=0, playSpeed=1 |
| 102632 |
Test Thread |
INFO |
me |
Using external audio 'tmp\ULJS00459\Mpeg-12955648\ExtAudio.wav' |
| 105633 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000064 |
| 105635 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000064 |
| 107473 |
Test Thread |
INFO |
stdout |
Live2D version 0.9.00b18 for PSP |
| 107483 |
Test Thread |
INFO |
stdout |
|
| 109636 |
Async Vertex Cache Thread |
INFO |
ge |
Compiling VertexInfoReader for GU_TEXTURE_32BITF|GU_VERTEX_32BITF|GU_INDEX_16BIT|GU_TRANSFORM_3D size=20 |
| 109636 |
Async Vertex Cache Thread |
INFO |
ge |
Compiling VertexInfoReader for GU_TEXTURE_32BITF|GU_VERTEX_32BITF|GU_INDEX_16BIT|GU_TRANSFORM_3D size=20 |
| 128339 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000081 |
| 128340 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000081 |
| 142486 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000088 |
| 142489 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000088 |
| 149838 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x0000008A |
| 149838 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x0000008A |
| 150165 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x0000008C |
| 150166 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x0000008C |
| 150168 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x0000008E |
| 150169 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x0000008E |
| 150234 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000090 |
| 150236 |
Test Thread |
WARN |
hle.ThreadManForUser |
checkThreadID not found thread 0x00000090 |
| 155095 |
Test Thread |
ERROR |
memory |
read32 - Invalid memory address : 0x0 PC=0884FA58 |
| 163033 |
GUI |
INFO |
hle.ThreadManForUser |
----------------------------- ThreadMan exit ----------------------------- |