Free Hero Mesh

Check-in [65b8239f8b]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:More improvements to PORTING file.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 65b8239f8b5d675bb1a739e494f9954a793cd8d9
User & Date: user on 2022-06-30 06:37:36
Other Links: manifest | tags
Context
2022-07-01
21:09
Change MoveItem to Uint16 and fix the encoders/decoders for future use (only numbers 8 to 255 are currently in use). check-in: 1aadd6299e user: user tags: trunk
2022-06-30
06:37
More improvements to PORTING file. check-in: 65b8239f8b user: user tags: trunk
06:01
Add PORTING file (currently incomplete) check-in: 956eb13fee user: user tags: trunk
Changes

Modified PORTING from [7c1006dc5b] to [35ecae0c52].

103
104
105
106
107
108
109
110

111
112
113
114
115
116
117
read-only. Composite puzzle sets are probably best in this case since they
are always opened read-only. There is no need to restrict execution of any
file, or reading any installed file (even if the file is modified by the
system administrator).

Games: Debian policy has some specifications that are specific to game
programs. These probably apply normally to Free Hero Mesh. The set-group-id
mechanism is not needed; Free Hero Mesh does not share scores. It is OK to

install binaries in /usr/games and man pages in /usr/share/man/man6 but
the "har" program (which should probably be a separate package) should be
installed in /usr/bin instead, probably.

X Window System: This is probably not applicable, because SDL is able to
use other video systems, although normally the X window system is used. If
the operating system doesn't use X window system, then the program should







|
>







103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
read-only. Composite puzzle sets are probably best in this case since they
are always opened read-only. There is no need to restrict execution of any
file, or reading any installed file (even if the file is modified by the
system administrator).

Games: Debian policy has some specifications that are specific to game
programs. These probably apply normally to Free Hero Mesh. The set-group-id
mechanism is not needed; Free Hero Mesh does not share scores (it might be
added in future, but would be an optional feature, anyways). It is OK to
install binaries in /usr/games and man pages in /usr/share/man/man6 but
the "har" program (which should probably be a separate package) should be
installed in /usr/bin instead, probably.

X Window System: This is probably not applicable, because SDL is able to
use other video systems, although normally the X window system is used. If
the operating system doesn't use X window system, then the program should
143
144
145
146
147
148
149




150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
if you have puzzle sets with valid solutions recorded. However, this only
tests the behaviour of the game engine, and not any other features. Also,
it only tests valid solutions, and not parts of the code that should result
in error messages (although this possibility might be added in future).


=== Game execution and user interface ===





The exec.c and class.c files are the most important files, and can probably
be used with minor changes even if porting to different systems and/or user
interfaces. The other files could be omitted, but then those parts must be
rewritten (possibly in a different programming language); some parts of the
existing files could be copied if needed.


=== Character Encoding ===

Free Hero Mesh does not and will not use Unicode. As of this writing, it
only supports single-byte character codes, although in future it is
intended that multi-byte codes (e.g. EUC-JP) might also be implemented.


=== Touch screen ===







>
>
>
>








|







144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
if you have puzzle sets with valid solutions recorded. However, this only
tests the behaviour of the game engine, and not any other features. Also,
it only tests valid solutions, and not parts of the code that should result
in error messages (although this possibility might be added in future).


=== Game execution and user interface ===

You may use the existing implementations for user interfaces and will not
need to write a new implementation; but some ports might need a new user
interface; if it does, then the below notes may be helpful.

The exec.c and class.c files are the most important files, and can probably
be used with minor changes even if porting to different systems and/or user
interfaces. The other files could be omitted, but then those parts must be
rewritten (possibly in a different programming language); some parts of the
existing files could be copied if needed.


=== Character encoding ===

Free Hero Mesh does not and will not use Unicode. As of this writing, it
only supports single-byte character codes, although in future it is
intended that multi-byte codes (e.g. EUC-JP) might also be implemented.


=== Touch screen ===
217
218
219
220
221
222
223





224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
A DOS version of Free Hero Mesh could additionally be changed to use an
internal clipboard, or an optional device driver for clipboard.

It may be desirable to implement support for importing and exporting PCX
and Dr.Halo picture formats directly, either built-in or using a separate
program that is included with it, in the DOS version.







=== Amiga ===

(TODO)


=== Microsoft Windows ===

(TODO)


=== Mac OS X ===

(TODO)








>
>
>
>
>








|






222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
A DOS version of Free Hero Mesh could additionally be changed to use an
internal clipboard, or an optional device driver for clipboard.

It may be desirable to implement support for importing and exporting PCX
and Dr.Halo picture formats directly, either built-in or using a separate
program that is included with it, in the DOS version.

DOS uses CRLF line endings instead of LF only like UNIX does. Free Hero
Mesh already can read class definition files with or without carriage
returns. The level import also can read with or without carriage returns.
However, exports do not add carriage returns.


=== Amiga ===

(TODO)


=== Microsoft Windows ===

The same consideration about line endings with DOS also applies to Windows.


=== Mac OS X ===

(TODO)