1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
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
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
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
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
***************************************************************************
* *
* Project: RiscOS *
* *
* Module: Kernel *
* *
* Created: Fri 30-Jul-93 By: Jonathan Roach *
* *
* First version: 3.21 *
* *
* Copyright: (C) 1993, Acorn Computers Ltd., Cambridge, England. *
* *
***************************************************************************
Purpose:
========
***************************************************************************
Change Log:
===========
---------------------------------------------------------------------------
Version: 3.21 Fri 30-Jul-93 Jonathan Roach
Turned into module for first time.
---------------------------------------------------------------------------
Version: 3.22 Thu 26-Aug-93 Owen Love
* Improvement in the wording of the error messages stored in the message
file as part of the Libra project.
---------------------------------------------------------------------------
Version: 3.23 Wed 22-Sep-93 AGodwin
Checked in TestSrc directory. POST currently disabled for normal startup
and should be available only when POSTbox display is attached.
---------------------------------------------------------------------------
Version: 3.24 Thu 30-Sep-93 AGodwin
Checked in updates to POST : should be fully working version.
---------------------------------------------------------------------------
Version: 3.25 Mon 18-Oct-93 Owen Love
Changed 'Bad parameters for *Save' error message that was incorrect
---------------------------------------------------------------------------
Version: 3.26 Thu 21-Oct-93 Jonathan Roach
(19-Oct-93) TDobson
Fix MED-00523: Remove pointer if would be completely off LHS of
screen, otherwise can upset display if it straddles hsync pulse.
Fix MED-00637: Creating dynamic area of zero maximum size now
works. Screen mode 32 changed to NColour=63 and ModeFlags=0,
like all other numbered 256 colour modes.
---------------------------------------------------------------------------
* Changed startup code to give memory size in megabytes rather than
kilobytes. Change made (conditionally) in NewReset by Bruce Cockburn
on 04-Nov-93.
---------------------------------------------------------------------------
Version: 3.27 Mon 15-Nov-93 Jonathan Roach
(21-Oct-93) SCormie
*Configure MouseType should have called OS_Pointer.
(25-Oct-93) SCormie
NewReset now waits up to 1 sec for keyboard present.
(25-Oct-93) TDobson
Fix bug MED-00811 - initialise SpriteSize to zero on reset.
(25-Oct-93) JRoach
Fix bug MED-00680 - *Save syntax message not tokenised properly.
(26-Oct-93) JRoach
Fix bug MED-00570 - delete-power-on gives 1997. Problem was
delete-power-on set base to 1994 and so when the modulo of '3' came
out of the clock the kernel thought it had to be 1997.
(26-Oct-93) TDobson
Fix bug MED-00301 - mode selector block now alternates between two
overlapping ones, so that returned mode number changes each mode
change (although if someone goes eg M%=MODE:MODE 12:...:MODE M% it
will use the block specified by M%).
(28-Oct-93) AGlover : vduswis, vdudriver, vdugrafj, vdugrafk
Bugfixing session on sprites. Major points:-
Screensave works, and gives old format sprites where possible.
Screenload works, and no longer believes the mode number in the
sprite - it will always build a mode selector to suit the sprite.
EIG 0 and EIG 3 sprites supported - fixes DragASprite leaving
trails on-screen in these modes.
Mode 32 is now the monitor type 4 256 colour substitute mode.
GetSprite(User) ensures no LH wastage on new format sprites.
Screensave now copes with saving a full entry 256 colour palette.
Whenever possible GetSprite will make an old format sprite - if
you must have a new format sprite make it first with CreateSprite.
While there are four of us intermittently touching bits of the kernel
please say which files you've actually altered. Thanks. amg
(03-Nov-93) AGlover : vdugrafj
Change substitute mode numbers used for 90 x 90 dpi sprites to 25-28
instead of 18-21.
(04-Nov-93) JRoach : GetAll, Kernel
Enable IncludeTestSrc and make Reset vector for resetting work in
conjunction with the test source.
(08-Nov-93) TDobson : vdudecl, vdudriver
Complete kernel support for DPMS.
(10-Nov-93) TDobson : source.pmf.osbyte
Fix bug MED-00963: INKEY(-256) now returns &A5.
(11-Nov-93) TDobson : source.vdumodes
Fix bug MED-?????: mode 32 now same timings as modes 29-31.
(12-Nov-93) AGlover : source.vdugrafg
Fix bug MED-01112 : 32K/16M sprites not working with SpriteOp ReadPixelColour (41)
Fix bug MED-????? : Correct the routine which bounces palettes on new format sprites
(13-Dec-93) BCockburn : Middle, Source.PMF.OsInit, Hdr:VickySpace
Inmplemented ReadSysInfo 4 to do the Ethernet address. This meant changing
the reading of the 64 bit thing (in osinit) to store all of it rather than the
48 bit version. Moved the 48bit trimming code the the implementation of
ReadSysInfo 2.
---------------------------------------------------------------------------
Version: 3.28 Fri 17-Dec-93 Jonathan Roach
(18-Nov-93) AGlover : source.vdugrafh, source.vduswis, source.vdudriver, source.vdugrafj
Fix bug MED-01130 : GetMaskSpWidth was going wrong when mask exactly fitten in a word
Change handling of sprite type so that unknown types are handled as 32bpp - will make
life easier for people adding new types that the OS doesn't handle.
(23-Nov-93) AGlover : source.vdugrafg, source.vdugrafh, source.vdugrafi
Fix bug MED-01281 : return an error when I should for spriteops given new format
masks.
(24-Nov-93) AGlover: source.vdugrafg
Fix bug MED-????? : sprite name matching code was being broken by changed
lowercase macro. Code now uses uk_lowercase which retains the original
behaviour of the macro keeping the sprite stuff compatible with 3.10
(25-Nov-93) TDobson: source.vdumodes
Fix mode definition for mode 47 (PCEm mode 360 x 480) to have sync polarity 3,
so it gives correct height on VGA-only monitors.
(26-Nov-93) SCormie: Source.PMF.key, Source.PMF.osinit
Keyboard driver and key handler now trigger each other correctly during reset.
Change default serial threshold from 9 to 17.
(30-Nov-93) AGlover: source.vdu23, source.vduwrch
Fix bug MED-01141: Split CompileTextFgBg into two separate routines and only call
the one actually relevant. This prevents spurious colour changes when a text colour
set by OS_SetColour is changed using VDU 17 or VDU 23,17 (what used to happen is
that because the Fore/Back Col and Tint words didn't produce the colour in use (which
had been modified directly by OS_SetColour) it was replacing it with whatever the
ForeCol and Tint produced. Note: Doing a VDU 23,17 before the first VDU 17 will still
go wrong - but I don't think it's worth fixing.
(30-Nov-93) TDobson: source.vdumodes
Change XEigFactor for games modes 48,49 to 2 (from 1) at the request of Ran Mokady.
(01-Dec-93) TDobson: source.pmf.osword
Fix bug MED-00355: OS_Word(&0F) no longer requires a terminating
character after string (it now pushes the string on the stack and
terminates it, before calling the TerritoryManager).
(01-Dec-93) TDobson: NewReset
Fix bug MED-01513: now prints eg "RISC OS 10MB" on startup.
(02-Dec-93) TDobson: ModHand
Fix bug MED-01229: now uses 8 bytes of unplug CMOS for podules, + 1 for network card
(06-Dec-93) JRoach: NewReset
Correct mouse step default to 2 for faster mice we'll be using.
(07-Dec-93) AGlover: source.vdugrafj, source.vdugrafk
Fix bug MED-?????: make sure screensave and getsprite(user) don't permit palettes
on sprites which it can't force back to an old screen mode
(09-Dec-93) TDobson: source.vdudriver, source.vduswis
Use Roger's algorithm for default XEigFactor, YEigFactor for mode selectors.
(13-Dec-93) TDobson: GetAll
Set AddTubeBashers flag to FALSE.
(15-Dec-93) TDobson: GetAll, NewReset
Set DebugROMInit and DebugROMErrors flags to FALSE.
Fix bug MED-01774: Change default FontSize to 64K.
---------------------------------------------------------------------------
Version: 3.29 Tue 21-Dec-93 Owen Love
Changed 'Memory cannot be moved' error message.
---------------------------------------------------------------------------
Version: 3.30 Thu 27-Jan-94 Jonathan Roach
(21-Dec-93) AGlover: arthur3
Fix bug MED-01583 - *eval 9999999999999 was calling msgtrans twice to return error
(06-Jan-94) TDobson: Kernel, Source.PMF.Key, SWINaming
Added SWI OS_Reset - part of fix for MED-01397.
(10-Jan-94) BCockburn: Middle
Fixed Ethernet address generation to use the correct base
(&0000A4100000) value rather than the value &0000A4000000 as found
in the Dallas chip itself.
(10-Jan-94) TDobson: source.vdudriver, source.vduswis
Fixed bug MED-00563: invalid mode selector should return error from
mode change, not select mode 0.
If current monitor type is a file, now uses VGA substitute table for
unavailable mode numbers - eg if you select mode 16, you now get
mode 27, rather than mode 0.
(10-Jan-94) TDobson: source.vdudriver
Fixed bug MED-00483: "mode selector" not on a word boundary (eg
sprite mode word) is now not offered round to Service_ModeExtension,
so should now give error, rather than data aborts.
(12-Jan-94) JRoach: GetAll
Fixed bug MED-00585: configured language wasn't 10, and now is.
(13-Jan-94) TDobson: GetAll, ModHand
Introduced conditional flag RMTidyDoesNowt - if true (which it is on Medusa),
then RMTidy returns having done nothing. This is because it would always
fail anyway, because FSLock always refuses to die. Fixes MED-02125.
(14-Jan-94) SCormie: source.PMF.osinit
Changed combo chip configure sequence so that 710 configuration doesn't put
665 into a strange state if receiving at the same time (caused chip to generate
an interrupt which could not be cleared.
(14-Jan-94) JRoach: Arthur2
Changed GSInit/GSRead to use its stack memory as a wrapping buffer.
This means GSInit doesn't need to flatten it before starting which
means recursive calls the GSTrans work.
(17-Jan-94) TDobson: ARM600, ChangeDyn
Put in semaphore, so that OS_ChangeDynamicArea will fail if it is already threaded.
(Data abort handler clears it, in case area handler goes bang!)
(17-Jan-94) TDobson, AGlover: source.vdugrafj
Fixed the 21-Dec-93 fix so it assembles and hopefully works!
(18-Jan-94) TDobson: ARM600, Kernel, SWINaming
Added soft copy for MMU control register, and SWI OS_MMUControl to update it.
(19-Jan-94) AGlover: source.vdugrafg
Fix bug MED-02210 - plot mask for 1bpp masks was going wrong when plotting clipped.
(19-Jan-94) JRoach: NewReset
Correct CMOS default for textured window background to match the CMOS spec.
(The spec says set bit 7 of &8c to 0 to turn on textured window backgrounds).
(19-Jan-94) JRoach: NewReset
Correct CMOS default for desktop font to '8' which is still Homerton.Medium.
Changed needed as Darwin has been removed and so the numbers change.
(19-Jan-94) TDobson: ARM600
Fixed bug MED-02452: make BangCamUpdate check if oldaddr=newaddr,
and don't remove page from old address if so.
(19-Jan-94) TDobson: source.vdudriver
Changed notional operational range for VCO to 55-110MHz (from 40-80MHz).
(21-Jan-94) TDobson: ARM600
Changed ROM access speed to 156.25ns (from 187.5ns)
(21-Jan-94) TDobson: source.vdudriver
Changed ComputeModuli to only use R-values up to 16 (not 64), to
improve minimum comparison frequency.
Change FIFO load position algorithm to use table produced by Peter
Watkinson.
(24-Jan-94) TDobson: GetAll, source.vdudriver, source.vduswis
Conditionally reversed change to XEig/YEig algorithm back to what it was
in 3.27.
(25-Jan-94) TDobson: source.vdudriver
Fixed FIFO load position table to use correct units.
---------------------------------------------------------------------------
Version: 3.31 Tue 08-Feb-94 Tim Dobson
(28-Jan-94) AGlover: syscomms, source.vdugrafj
Fix bug MED-01570 (syscomms), and various bugs reports involving
1bpp 2 x 2 eig modes (vdugrafj: sanitizesgetmode was mishandling
double pixel modes)
(28-Jan-94) TDobson: source.vdumodes
Update kernel's hard-wired mode tables to use new VCO range.
(28-Jan-94) TDobson: TickEvents
Fixed bug MED-02498: OS_CallAfter/Every and OS_RemoveTickerEvent problems.
(31-Jan-94) TDobson: TickEvents
Fixed register corruption in above fix.
(01-Feb-94) AGlover: hdr:sprite, vdugrafdec, vdugrafj, vdugrafk, vdugrafl
Fix bug MED-02160. Make switching output to, and screenloading of, a
256 colour 8bpp sprite work. The hdr change is because the value of
MaxSpritePaletteSize has been updated.
(03-Feb-94) TDobson: ARM600, ChangeDyn, GetAll
Fix bugs MED-00793, MED-01846. Dynamic areas which may require
specific physical pages must now have a new bit set in the dynamic
area flags. As a result, other areas can perform large grows in one
chunk, rather than being split up, because it is not necessary to
set up the page blocks etc. Therefore a) dragging RAMFS bar is much
faster and b) there's no chance that intermediate reinits of RAMFS
can steal pages that were to be used for subsequent chunks.
---------------------------------------------------------------------------
Version: 3.32 Mon 14-Feb-94 Tim Dobson
(08-Feb-94) AGlover: source.vdugrafh
Fix bug MED-01885. WritePixelColour wasn't working correctly for
8bpp full palette sprites.
(09-Feb-94) TDobson: Messages
Fix part of bug MED-02389 by changing system heap full message.
(10-Feb-94) AGlover: source.vdugrafh
More on MED-01885. AddTintToColour decides what to do by NColour, rather
that SprRdNColour which is correct for Write/ReadPixel in sprite.
Set NColour to SprRdNColour for the call and then restore it afterwards.
The scope of the bug was more than first thought - it affected writing to
any 8bpp sprite in anything other than an 8bpp screen mode.
(11-Feb-94) TDobson: NewReset
Limit maximum size of RAM disc to 16MB, because FileCore can't cope
with some larger sizes.
---------------------------------------------------------------------------
Version: 3.33 Tue 15-Feb-94 Tim Dobson
(14-Feb-94) TDobson: NewIRQs
Fix bug MED-02859 - Unknown IRQ code now copes with DMA IRQs.
---------------------------------------------------------------------------
Medusa OS build
===========================================================================
***************************************************************************
* *
* Project: Black *
* *
* Module: Kernel *
* *
* Created: Thu 11-Aug-94 By: Aideen McConville *
* *
* First version: 3.50 *
* *
* Copyright: (C) 1994, Acorn Computers Ltd., Cambridge, England. *
* *
***************************************************************************
Purpose:
========
***************************************************************************
Change Log:
===========
---------------------------------------------------------------------------
Version: 3.50 Thu 11-Aug-94 Aideen McConville
Moved to new source tree (Identical to Version: 3.33 above).
---------------------------------------------------------------------------
Version: 3.51 Wed 25-May-94 Alan Glover
(28-Apr-94) AGlover: source.vdugrafj
Fix screenloading of 8bpp non-full palette sprites (deferred fix from Medusa
freeze). MED-03186
(28-Apr-94) AGlover: source.vdugrafh
Fix spriteop readpixel for 256 colour full palette modes (deferred fix from
Medusa freeze). MED-03090
(28-Apr-94) AGlover: source.vduswis
Fix readmodevariable returning 63 instead of 255 for a sprite mode word.
MED-03265
(25-May-94) AGlover: source.vdugrafg,j,k
Changes to allow palettes on new format sprites of 8bpp and below. Also
William Turner's vdugrafh,i.
---------------------------------------------------------------------------
Version: 3.52 Thu 11-Aug-94 Richard Manby
requires Hdr:Machine.Morris (from HdrSrc 3.55)
New files: s.Morris Contains 16/32bit ROM startup code
Changes to: s.Kernel Changed to conditionally Get s.Morris
s.ARM600 Initialisation of extra Morris registers.
New RAM width and sizing code for Morris based machines.
TestSrc.Begin
s.PMF.key } ReadCh modified for Stork's power saving scheme.
s.PMF.osinit } see StorkPowerSave flag.
---------------------------------------------------------------------------
Version: 3.53 Thu 18-Aug-94 Richard Manby
Changes to s.Getall Made Stork & Morris flags define as false when not
required, so that OS's with no Morris support can
still be built.
Set IncludeTestSrc flag to false so that the Kernel
built to test Morris stands more chance of starting up.
---------------------------------------------------------------------------
Version: 3.54 Wed 24-Aug-94 Steve Cormie
Changes to s.ChangeDyn Access privileges for soft cam map changed to make
pages unavailable (source level fix for MemFix utility).
s.NewReset Access privileges for system heap, level 2 page tables
and soft cam map changed to make pages unavailable
(source level fix for MemFix utility).
---------------------------------------------------------------------------
Version: 3.55 Thu 22-Sep-94 Alan Glover
Change to s.pmf.osbyte OS_Byte 19 returns immediately if screen is presently
blanked by DPMS (ie there are no HSYncs and hence
no VSyncs). Source level fix for DPMSUtils.
---------------------------------------------------------------------------
Version: 3.56 Thu 22-Sep-94 Steve Cormie
Changes to s.Arthur3 *Configure and *Syntax starting and trailing text now
looked up in Messages file.
s.Utility Error reported for *RMKill UtilityModule now looked up.
Resources.UK.Messages New messages added.
---------------------------------------------------------------------------
Version: 3.57 Mon 26-Sep-94 Steve Cormie
Changes to s.NewIRQs ROM patch converted to source fix; kernel does
its VSYNC stuff before issuing VSYNC events.
s.PMF.i2cutils ROM patch converted to source fix; put data
low before clock high on stop.
s.vdu.vdudriver ROM patch converted to source fix; display modes
with bits/scan line multiple of 32 but not 64.
---------------------------------------------------------------------------
Version: 3.58 Mon 03-Oct-94 Richard Manby
Changes to s.ARM600 Bug fix Morris RAM allocation code.
Hardwiring various bits to make simulation easier.
---------------------------------------------------------------------------
Version: 3.59 Wed 12-Oct-94 Alan Glover
Changes to s.pmf.osbyte Repair my DPMSUtils fix - can't use usual workspace
pointer register.
Bring version file back in step with source filer
version.
---------------------------------------------------------------------------
Version: 3.60 Fri 14-Oct-94 Richard Manby
---------------------------------------------------------------------------
Version: 3.61 Fri 14-Oct-94 Richard Manby
Really the same as 3.60 - Reversed various flags that were set to make
simulation easier.
---------------------------------------------------------------------------
Version: 3.62 Wed 19-Oct-94 Alan Glover
Changes to s.ARM600 Introduce use of hdr:ImageSize.<ImageSize>
s.GetAll Needed for ROM size and softloading.
---------------------------------------------------------------------------
Version: 3.63 Thu 27-Oct-94 Richard Manby
Changes to s.NewIRQ - Add extra Device IRQs for Morris PS2 mouse and AtoD.
s.NewReset - Set clock prescalers to divide by one.
---------------------------------------------------------------------------
Version: 3.64 Thu 27-Oct-94 Richard Manby
s.NewIRQ logged in again because SrcFiler got it wrong (corrupt files)
s.NewReset
---------------------------------------------------------------------------
Version: 3.65 Fri 28-Oct-94 Richard Manby *** MORRIS ONLY ****
s.vdu.vdudriver } initial stab at getting correct video timing on Morris
s.vdu.vdumodes } (cos rclk is 32MHz not 24MHz).
Gives wrong timing on RISC PC - will fix when I understand
enough about it to do it!.
---------------------------------------------------------------------------
Version: 3.66 Fri 28-Oct-94 Richard Manby *** MORRIS ONLY ****
s.Morris - Change 16 boot code to work around bugs in 1st Morris silicon.
This temporary change means ROMS WON'T work on RISC PCs.
---------------------------------------------------------------------------
Version: 3.67 Mon 31-Oct-94 Richard Manby
s.PMF.osinit - change kernel to default to FX 9,0 ie first flash colour
constantly displayed fixes fault MED-03256
---------------------------------------------------------------------------
Version: 3.68 Mon 31-Oct-94 WTurner
s.PMF.osinit - Changes to support monitor id on Morris machines.
Also contains updated hdr.KernelWS (CLine_Softcopy for Morris monitor id)
---------------------------------------------------------------------------
Version: 3.69 Mon 31-Oct-94 Aideen McConville
* s.PMF.osinit - Corrected some keyslips (LDRBNE -> LDRNEB)
* s.Version - updated from 3.32 !!!
---------------------------------------------------------------------------
Version: 3.70 Mon 31-Oct-94 Steve Cormie
* s.Utility, s.SysComms - Changes to *Help handlers so that the Kernel message
file is used in preference to the Global message file.
* Resources.UK.Messages - Moved command help/syntax from Global message file to
Kernel message file. Added directives for message
tokenisation.
---------------------------------------------------------------------------
Version: 3.71 Tue 01-Nov-94 Richard Manby
s.pmf.osinit } Extend ReadSysInfo(2) to indicate VIDC20 and IOMD variants
s.middle } used in Morris.
---------------------------------------------------------------------------
Version: 3.72 Wed 02-Nov-94 Richard Manby
s.vdu.vdudriver } Rework mode change code to cope with different rclk values
s.vdu.vdumodes } (cos rclk is 32MHz on Morris and 24MHz on RISC PC).
---------------------------------------------------------------------------
Version: 3.73 Thu 03-Nov-94 Steve Cormie
* s.NewReset - Set Boot$Error if FSControl_BootupFS returns an error.
---------------------------------------------------------------------------
Version: 3.74 Thu 03-Nov-94 Aideen McConville
* Export ScreenBlankFlag and ScreenBlankDPMSState so that DPMSUtils can
still be built (part of RISC OS 3.50 and 3.60)
Changed files: hdr.KernelWS
hdr.PublicWS
---------------------------------------------------------------------------
Version: 3.75 Fri 04-Nov-94 Richard Manby
Switch the POST code in to see if it works.
---------------------------------------------------------------------------
Version: 3.76 Mon 07-Nov-94 Richard Manby
Switch the POST code off because it doesn't work on Morris.
---------------------------------------------------------------------------
Version: 3.77 Wed 09-Nov-94 Richard Manby
ARM600 change to MemSize to merge ram fragments.
---------------------------------------------------------------------------
Version: 3.78 Wed 09-Nov-94 Richard Manby
Fix the MemSize changes
---------------------------------------------------------------------------
Version: 3.79 Wed 09-Nov-94 Richard Manby
Third time lucky!.
---------------------------------------------------------------------------
Version: 3.80 Thu 10-Nov-94 Richard Manby
Fixed a source corruption of s.pmf.osinit that stopped system clock
(ie OS_Word 1 clock) from working.
---------------------------------------------------------------------------
Version: 3.81 Wed 16-Nov-94 Steve Cormie
* s.SysComms - Forgot to make the SysComms module header point to the Kernel
Messages file for command help/syntax.
---------------------------------------------------------------------------
Version: 3.82 Thu 17-Nov-94 Steve Cormie
* Resources.UK.Messages - No longer tokenise kernel messages, just help/syntax.
---------------------------------------------------------------------------
Version: 3.83 Mon 21-Nov-94 Richard Manby
* s.Morris
* testsrc.Begin } rework POST code for Morris
* testsrc.Mem1IOMD }
* testsrc.Ioc }
* testsrc.Vidc }
Switch the POST code on because it now works on Morris.
---------------------------------------------------------------------------
Version: 3.84 Mon 21-Nov-94 Richard Manby
* s.KbdResPC enable Mouse port interrupts so Kernel sees a Keyboard when
mouse and keyboard are swapped over.
---------------------------------------------------------------------------
Version: 3.85 Wed 23-Nov-94 Richard Manby
s.Arm600 change the ROM speed for Morris to fast burst mode.
---------------------------------------------------------------------------
Version: 3.86 Wed 30-Nov-94 Steve Cormie
* s.ARM600 - Fixed MED-03854, enable MMUC_F bit in MMU control register by
default (actually ARM700 specific so that coprocessors run at FCLK speed,
has no effect on 6xx processors).
---------------------------------------------------------------------------
Version: 3.87 Thu 01-Dec-94 Richard Manby
* TestSrc.Begin - Fixed MED-03956, On Morris, change clock dividers and ROM
access speed from power-on defaults (ie slow) to sensible values.
* s.PMF.osinit add Stork detection to Kernel.
---------------------------------------------------------------------------
Version: 3.88 Fri 02-Dec-94 Richard Manby
* s.MemInfo - Changed OS_Memory 7 and OS_Memory 8 to return new larger
4MByte ROM size.
---------------------------------------------------------------------------
Version: 3.89 Tue 06-Dec-94 Steve Cormie
* s.Utility - Fixed MED-03685: Fixed bugs in OneModuleK where if the total
length of all commands exceeded the buffer size (512 bytes claimed from
stack) then the stack was corrupted.
* s.Arthur3 - Fixed MED-04034: New lines required after *Status and *Configure
title strings.
---------------------------------------------------------------------------
Version: 3.90 Wed 07-Dec-94 Steve Cormie
* s.Utility - Oops, fixed the fix in version 3.89.
---------------------------------------------------------------------------
Version: 3.91 Mon 12-Dec-94 Steve Cormie
* s.ModHand - Added 6 more bytes for unplugging modules.
---------------------------------------------------------------------------
Version: 3.92 Thu 15-Dec-94 Alan Glover
* s.vdu.vdugrafh - this oops lark is contagious. Really do the changes I
claimed for 3.51 to fix MED-03090. They got lost when I merged three
sources together.
---------------------------------------------------------------------------
Version: 3.93 Mon 19-Dec-94 Richard Manby
* s.ChangeDyn - put a fix in code for shrinking doubly mapped dynamic areas.
---------------------------------------------------------------------------
Version: 3.94 Wed 21-Dec-94 Richard Manby
* POST code bug fix in SoundIRQ test shown up by version 2 Morris chips.
---------------------------------------------------------------------------
Version: 3.95 Mon 09-Jan-95 Steve Cormie
* s.NewReset - CMOS clearing code skipped 2 bytes after YearCMOS now used for
unplugging ROM modules (used to be MonthCMOS and YearCMOS, only used for
A500s).
---------------------------------------------------------------------------
Version: 3.96 Thu 12-Jan-95 Graham Simms
* s.vdu.vdugrafi - Fixed MED-04130. The SpriteOp 'Flip about x axis' was creating
New format sprites with LH wastage in both the mask and sprite data when a new
format sprite with RH wastage was flipped.
---------------------------------------------------------------------------
Version: 3.97 Thu 12-Jan-95 Richard Manby
* s.NewReset - Fixed MED-04318 year defaults to 1995 onwards
---------------------------------------------------------------------------
Version: 3.98 Thu 19-Jan-95 Steve Cormie
* s.Kernel - Fixed MED-04367: R9 was being corrupted by ExtensionSWI handler
before calling the module SWI handler (PRM says that R0-R9 are passed from
the SWI caller). This has been broken for a long time (it is also present
in RISC OS 3.11 and possibly earlier).
---------------------------------------------------------------------------
Version: 3.99 Fri 20-Jan-95 Alan Glover
* s.vdu.vdugrafe, s.vdu.vdugrafdec, s.getall, hdr.kernelws - Fix MED-00001:
Flood fill now attempts to use rma, and use two-word entries in the queue
allowing it to overcome the old 1024 line limit.
* s.getall, s.morris - add warning messages when switch settings indicate
a version is being built that can't be tested by soft-loading on a RiscPC
(guess who fell for it!).
* s.getall, hdr.kernelws - Add Audit trial debugging for MED-00001: this should
be turned off (med_00001_debug) in s.getall once the fix has been tested
* hdr.riscos - change a character in a comment which objasm was sulking about
---------------------------------------------------------------------------
Version: 4.00 Fri 27-Jan-95 Richard Manby
* Kernel.s.PMF.osbyte changed INKEY-256 value from &A5 to &A6
MED-04451
---------------------------------------------------------------------------
Version: 4.01 Wed 01-Feb-95 Richard Manby
* Kernel.s.NewIRQs changed default IRQ2V handler to cope with unclaimed
interrupts from IRQ D (new for Morris), ie PS2 mouse port interrupts.
Fixes MED-04355
---------------------------------------------------------------------------
Version: 4.02 Wed 01-Feb-95 Steve Cormie
* Fixed MED-04483: Message "NumParm" should have remained in the
Global.Messages file.
---------------------------------------------------------------------------
Version: 4.03 Mon 06-Feb-95 Steve Cormie
* hdr.KernelWS, hdr.PublicWS, s.ChangeDyn - Fixed MED-04443 (hopefully!),
SVC stack increased in size to 12K.
---------------------------------------------------------------------------
Version: 4.04 Mon 06-Feb-95 Richard Manby
* s.ModHand Fixed MED-04173. *Unplug now checks to see whether a module is
active before killing it.
---------------------------------------------------------------------------
Version: 4.05 Tue 07-Feb-95 Steve Cormie
* hdr.KernelWS, hdr.PublicWS - Removed the change made in version 4.03.
SVC stack size moved back to 8K as changing it makes other modules
eg. FileSwitch, no longer work on older operating systems.
---------------------------------------------------------------------------
Version: 4.06 Tue 07-Feb-95 Richard Manby
* s.PMF.osinit
Optimisation: New routine Configure37C665 used instead of Configure82C710.
Since all the machines that Black is targetted for use the SMC 665, there is
no point assembling code that can cope the 82C710/82C711 as well.
For Stork: Added code to initialise various PowerControl latches so that
the machine powers up to a sensible state and will function (sort of) if
the portable module is unplugged.
---------------------------------------------------------------------------
Version: 4.07 Wed 08-Feb-95 Steve Cormie
* s.Arthur2 - Fixed MED-04528: OS_SetVarVal code was looking up the error
"String not recognised" (returned from OS_GSRead) when it did not need to.
---------------------------------------------------------------------------
Version: 4.08 Mon 13-Feb-95 Steve Cormie
* Fixed MED-03651: Changed default Econet protection mask on CMOS reset.
---------------------------------------------------------------------------
Version: 4.09 Wed 15-Feb-95 Steve Cormie
* hdr.KernelWS - Part of fix for MED-04611: Added CLibCounter for use by
Shared C Library tmpnam function.
---------------------------------------------------------------------------
Version: 4.10 Wed 15-Feb-95 Richard Manby
* s.GetAll } Conditionally changed the RISC PC ROM speed setting code
* s.ARM600 } to set burst mode ROM access. See flag RISCPCBurstMode.
If false, this will generate non-burst mode code as used
by all earlier versions.
---------------------------------------------------------------------------
Version: 4.11 Thu 16-Feb-95 Richard Manby
* s.Kernel Fixed stack inbalance in SWI despatch code - Pull "R9"
executed prior to entering modules made conditional on actually calling
the code, as if code is not called, we drop into VectorUserSWI code
which also pulls R9. Fixes MED-04655.
---------------------------------------------------------------------------
Version: 4.12 Tue 28-Feb-95 Richard Manby
* s.ARM600 Amount of space allowed for screen limited to 16MByte (as
requested by Tim Dobson).
---------------------------------------------------------------------------
Version: 4.13 Wed 01-Mar-95 Richard Manby
* s.ARM600 Code added to check processor type before setting burst mode on
a RISC PC. If processor type is ARM710, burst mode cannot be used.
Any other processor, ie ARM610, ARM710A etc uses burst mode.
NB This has no effect on Morris which uses seperate code.
* s.Morris - altered conditional to switch proper Morris start code in as the
default, rather than the code for early damaged Morris'.
---------------------------------------------------------------------------
Version: 4.14 Wed 01-Mar-95 Richard Manby
* s.GetAll Flag RISCPCBurstMode set true.
---------------------------------------------------------------------------
Version: 4.15 Thu 02-Mar-95 Aideen McConville
* s.GetAll Flag RISCPCBurstMode set false.
---------------------------------------------------------------------------
Version: 4.16 Mon 06-Mar-95 Richard Manby
* s.ARM600 zeroed VRAMSize for Morris based machines - fixes DForths bug MED-?????
also, after inspection of RPC code, initialised IOMD_VIDEND.
---------------------------------------------------------------------------
Version: 4.17 Tue 07-Mar-95 Alan Glover
* s.GetAll: Turn off the MED-00001 audit trail flag.
---------------------------------------------------------------------------
Version: 4.18 Wed 08-Mar-95 Richard Manby
* s.ARM600 In Morris specific IOMD register initialisation code - VIDMUX
register set for 'Japanese' format sound DAC's, cos Kryten and Stork
both now have 16 sound.
* s.NewReset CMOS RAM reset code now sets 16bit sound for all Morris based
machines and RISC PC's that look like Sugar/Rimmer. Normal RISC PCs set
for 8bit sound.
Above two changes fix MED-04831 and MED-04646.
* s.os.osinit Fixed Stork detection code.
---------------------------------------------------------------------------
Version: 4.19 Wed 08-Mar-95 Richard Manby
* s.NewReset Fix Sugar/Rimmer detector (change some LDRB's to LDR's).
---------------------------------------------------------------------------
Version: 4.20 Fri 10-Mar-95 Steve Cormie
* s.Kernel, s.GetAll: Conditioned out fix for R9 corruption in ExtensionSWI
handler (conditional on FixR9CorruptionInExtensionSWI) because CC's
!SpellMod and possibly others rely on broken behaviour.
* s.NewReset: Added default CMOS configuration for CDROMFSCMOS.
---------------------------------------------------------------------------
Version: 4.21 Mon 13-Mar-95 Aideen McConville
* Version set to 3.60 (13-Mar-95) for external release.
---------------------------------------------------------------------------
Version: 4.22 Wed 15-Mar-95 Aideen McConville
* Version set to 3.60 (15-Mar-95) to differentiate changed release.
Changed modules:
Free (0.30) - new version
FileCore (2.89) - new version
ADFS (3.12) - new version
ADFSFiler (0.83) - rebuilt with new Hdr:FileCore
RAMFS (2.11) - rebuilt with new Hdr:FileCore
---------------------------------------------------------------------------
Version: 4.23 Mon 20-Mar-95 Aideen McConville
* Version set to 3.60 (20-Mar-95) to differentiate changed release.
Changed modules:
ColourPicker (0.35) - rebuilt with Lib.Support (0.10) - MED-04986
DrawFile (1.46) - rebuilt with Lib.Support (0.10) - no functional change
BootCmds (1.14) - rebuilt with Lib.Support (0.10) - no functional change
SpriteExtend (0.98) - MED-05018
Internet (4.02)
Freeway (0.22)
ShareFS (2.34)
---------------------------------------------------------------------------
Version: 4.24 Wed 22-Mar-95 Aideen McConville
* Version set to 3.60 (22-Mar-95) to differentiate changed release.
Changed modules:
ColourPicker (0.36) - MED-04985 (built with Lib.Support 0.11)
ATAPI (1.21)
Freeway (0.23)
---------------------------------------------------------------------------
Version: 4.25 Fri 24-Mar-95 Aideen McConville
* Version set to 3.60 (24-Mar-95) to differentiate changed release.
Changed modules:
ADFS (3.13) - MED-05030
ATAPI (1.22)
CDFSFiler (2.39) - MED-04687
PS2Driver (0.14) - MED-04434, MED-04838
---------------------------------------------------------------------------
Version: 4.27 Tue 04-Apr-95 Aideen McConville
* Version set to 3.60 (31-Mar-95) to differentiate changed release.
Changed modules:
ATAPI (1.23)
FileCore (2.91)
SpriteExtend (0.99)
!Printers (1.46)
Toolbox (1.36)
Internet (4.03)
Freeway (0.24)
---------------------------------------------------------------------------
Version: 4.28 Thu 13-Apr-95 Aideen McConville
* Version set to 3.60 (13-Apr-95) to differentiate changed release.
Changed modules:
CDFSFiler (2.40)
PDModules (4.35) - PDriverPS, PDriverDP